pull/32/head
kunfei 5 years ago
parent 4aa80e7385
commit 24e98561c9
  1. 20
      app/src/main/java/io/legado/app/model/analyzeRule/AnalyzeByXPath.kt

@ -33,16 +33,20 @@ class AnalyzeByXPath {
val jxNodes = ArrayList<JXNode>() val jxNodes = ArrayList<JXNode>()
val elementsType: String val elementsType: String
val rules: Array<String> val rules: Array<String>
if (xPath.contains("&&")) { when {
xPath.contains("&&") -> {
rules = xPath.split("&&").dropLastWhile { it.isEmpty() }.toTypedArray() rules = xPath.split("&&").dropLastWhile { it.isEmpty() }.toTypedArray()
elementsType = "&" elementsType = "&"
} else if (xPath.contains("%%")) { }
xPath.contains("%%") -> {
rules = xPath.split("%%").dropLastWhile { it.isEmpty() }.toTypedArray() rules = xPath.split("%%").dropLastWhile { it.isEmpty() }.toTypedArray()
elementsType = "%" elementsType = "%"
} else { }
else -> {
rules = xPath.split("||").dropLastWhile { it.isEmpty() }.toTypedArray() rules = xPath.split("||").dropLastWhile { it.isEmpty() }.toTypedArray()
elementsType = "|" elementsType = "|"
} }
}
if (rules.size == 1) { if (rules.size == 1) {
return jxDocument!!.selN(rules[0]) return jxDocument!!.selN(rules[0])
} else { } else {
@ -79,16 +83,20 @@ class AnalyzeByXPath {
val result = ArrayList<String>() val result = ArrayList<String>()
val elementsType: String val elementsType: String
val rules: Array<String> val rules: Array<String>
if (xPath.contains("&&")) { when {
xPath.contains("&&") -> {
rules = xPath.split("&&").dropLastWhile { it.isEmpty() }.toTypedArray() rules = xPath.split("&&").dropLastWhile { it.isEmpty() }.toTypedArray()
elementsType = "&" elementsType = "&"
} else if (xPath.contains("%%")) { }
xPath.contains("%%") -> {
rules = xPath.split("%%").dropLastWhile { it.isEmpty() }.toTypedArray() rules = xPath.split("%%").dropLastWhile { it.isEmpty() }.toTypedArray()
elementsType = "%" elementsType = "%"
} else { }
else -> {
rules = xPath.split("||").dropLastWhile { it.isEmpty() }.toTypedArray() rules = xPath.split("||").dropLastWhile { it.isEmpty() }.toTypedArray()
elementsType = "|" elementsType = "|"
} }
}
if (rules.size == 1) { if (rules.size == 1) {
val jxNodes = jxDocument!!.selN(xPath) val jxNodes = jxDocument!!.selN(xPath)
for (jxNode in jxNodes) { for (jxNode in jxNodes) {

Loading…
Cancel
Save