Android部分字符串关键字匹配

时间:2016-08-08 05:44:29

标签: java android string match keyword

在android中,我有一个主字符串和另一个字符串,其中包含由空格分隔的关键字。 我想输出一个字符串,其中突出显示具有匹配关键字的主字符串。

实施例

String strMain = "This string contains     the main contents.";

String strSearchKeywords = "this cont";

结果输出必须是:

String strResult = "<b>This</b> string <b>cont</b>ains     the main <b>cont</b>ents.";

一种方法是将搜索关键字拆分为数组列表,然后遍历每个项目并突出显示主要内容。

但是,如果没有迭代,有没有其他方法,比如使用正则表达式匹配?

感谢。

1 个答案:

答案 0 :(得分:3)

strMain = strMain .replaceAll("(?i)(" + strSearchKeywords.replace(' ', '|') + ")",
        "<b>$1</b>"); 

这意味着

strMain = strMain .replaceAll("(?i)(this|cont)",
        "<b>$1</b>");

(?i)设置ignore-case标志。