From 0154d10dff040789614ab1df43f01b318f014acf Mon Sep 17 00:00:00 2001 From: bushixuanqi <57338301+bushixuanqi@users.noreply.github.com> Date: Wed, 21 Jul 2021 22:07:40 +0800 Subject: [PATCH] Update AnalyzeRule.kt --- .../app/model/analyzeRule/AnalyzeRule.kt | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/app/src/main/java/io/legado/app/model/analyzeRule/AnalyzeRule.kt b/app/src/main/java/io/legado/app/model/analyzeRule/AnalyzeRule.kt index f9e0024c0..e205e4e40 100644 --- a/app/src/main/java/io/legado/app/model/analyzeRule/AnalyzeRule.kt +++ b/app/src/main/java/io/legado/app/model/analyzeRule/AnalyzeRule.kt @@ -66,7 +66,7 @@ class AnalyzeRule(val ruleData: RuleDataInterface) : JsExtensions { fun setRedirectUrl(url: String): URL? { kotlin.runCatching { val urlMatcher = AnalyzeUrl.paramPattern.matcher(url) - redirectUrl = URL( if(urlMatcher.find())url.substring(0,urlMatcher.start()) else url) + redirectUrl = URL(if (urlMatcher.find()) url.substring(0, urlMatcher.start()) else url) } return redirectUrl } @@ -367,6 +367,8 @@ class AnalyzeRule(val ruleData: RuleDataInterface) : JsExtensions { mMode = Mode.Regex isRegex = true start = 1 + } else if (isRegex) { + mMode = Mode.Regex } var tmp: String val jsMatcher = JS_PATTERN.matcher(ruleStr) @@ -395,8 +397,10 @@ class AnalyzeRule(val ruleData: RuleDataInterface) : JsExtensions { * 规则类 */ - inner class SourceRule internal constructor(ruleStr: String, mainMode: Mode = Mode.Default) { - internal var mode = mainMode + inner class SourceRule internal constructor( + ruleStr: String, + internal var mode: Mode = Mode.Default + ) { internal var rule: String internal var replaceRegex = "" internal var replacement = "" @@ -410,9 +414,7 @@ class AnalyzeRule(val ruleData: RuleDataInterface) : JsExtensions { init { rule = when { - mode == Mode.Js || mode == Mode.Regex -> { //splitSourceRule预先确定了Mode.Js和Mode.Regex两种mode,避免被后面的值覆盖先进行判断 - ruleStr - } + mode == Mode.Js || mode == Mode.Regex -> ruleStr ruleStr.startsWith("@CSS:", true) -> { mode = Mode.Default ruleStr @@ -433,13 +435,11 @@ class AnalyzeRule(val ruleData: RuleDataInterface) : JsExtensions { mode = Mode.Json ruleStr.substring(6) } - ruleStr.startsWith("$.") || ruleStr.startsWith("$[") || isJSON -> { + isJSON || ruleStr.startsWith("$.") || ruleStr.startsWith("$[") -> { mode = Mode.Json ruleStr } - else -> { - ruleStr - } + else -> ruleStr } //分离put rule = splitPutRule(rule, putMap)