From 245eb3e8bd14b13319eb22ea8c3feeb610a6beec Mon Sep 17 00:00:00 2001 From: Horis <821938089@qq.com> Date: Fri, 15 Dec 2023 15:13:42 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../io/legado/app/model/analyzeRule/AnalyzeRule.kt | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 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 d3da68e1a..d2aced8ee 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 @@ -154,8 +154,15 @@ class AnalyzeRule( } else { // 键值直接访问 result[sourceRule.rule] - }?.let { - replaceRegex(it.toString(), sourceRule) + } + result?.let { + if (sourceRule.replaceRegex.isNotEmpty() && it is List<*>) { + result = it.map { o -> + replaceRegex(o.toString(), sourceRule) + } + } else if (sourceRule.replaceRegex.isNotEmpty()) { + result = replaceRegex(result.toString(), sourceRule) + } } } else { for (sourceRule in ruleList) { @@ -413,7 +420,7 @@ class AnalyzeRule( /** * getString 类规则缓存 */ - fun splitSourceRuleCacheString(ruleStr: String?) : List { + fun splitSourceRuleCacheString(ruleStr: String?): List { if (ruleStr.isNullOrEmpty()) return emptyList() val cacheRule = stringRuleCache[ruleStr] return if (cacheRule != null) {