fix: 带问号的评论内容匹配

This commit is contained in:
guozhigq
2023-10-22 14:11:43 +08:00
parent 9fd5193259
commit 48030d5ee7

View File

@ -669,16 +669,26 @@ InlineSpan buildContent(
String matchUrl = matchMember; String matchUrl = matchMember;
if (content.jumpUrl.isNotEmpty && hasMatchMember) { if (content.jumpUrl.isNotEmpty && hasMatchMember) {
List urlKeys = content.jumpUrl.keys.toList().reversed.toList(); List urlKeys = content.jumpUrl.keys.toList().reversed.toList();
for (var index = 0; index < urlKeys.length; index++) {
var i = urlKeys[index];
if (i.contains('?')) {
urlKeys[index] = i.replaceAll('?', '\\?');
}
}
matchUrl = matchMember.splitMapJoin( matchUrl = matchMember.splitMapJoin(
/// RegExp.escape() 转义特殊字符 /// RegExp.escape() 转义特殊字符
RegExp(urlKeys.map((key) => key).join("|")), RegExp(urlKeys.map((key) => key).join("|")),
// RegExp(RegExp.escape(urlKeys.join("|"))), // RegExp('What does the fox say\\?'),
onMatch: (Match match) { onMatch: (Match match) {
String matchStr = match[0]!; String matchStr = match[0]!;
String appUrlSchema = content.jumpUrl[matchStr]['app_url_schema']; String appUrlSchema = '';
if (content.jumpUrl[matchStr] != null) {
appUrlSchema = content.jumpUrl[matchStr]['app_url_schema'];
}
// 默认不显示关键词 // 默认不显示关键词
bool enableWordRe = bool enableWordRe =
setting.get(SettingBoxKey.enableWordRe, defaultValue: false); setting.get(SettingBoxKey.enableWordRe, defaultValue: false);
if (content.jumpUrl[matchStr] != null) {
spanChilds.add( spanChilds.add(
TextSpan( TextSpan(
text: content.jumpUrl[matchStr]['title'], text: content.jumpUrl[matchStr]['title'],
@ -721,6 +731,8 @@ InlineSpan buildContent(
}, },
), ),
); );
}
if (appUrlSchema.startsWith('bilibili://search') && enableWordRe) { if (appUrlSchema.startsWith('bilibili://search') && enableWordRe) {
spanChilds.add( spanChilds.add(
WidgetSpan( WidgetSpan(