我正在尝试在字符串“Search\nPrefix with tag:app: or text:”中匹配“\b\w+:”
代码如下所示:
String s = "Search\nPrefix with tag: app: or text:";
SpannableString str = SpannableString.valueOf(s);
Pattern regex = Pattern.compile("\\b\\w+:");
Matcher m = regex.matcher(str);
while(m.find()) {
// do stuff
}
我在 Eclipse 中使用调试器跟踪代码,并且从未输入过 while 循环,这意味着 m.find() 返回 false。我试图将正则表达式更改为简单明了
Pattern regex = Pattern.compile("app:");
它应该可以工作,对吧?它与字符串中的显式文本相同。但仍然没有匹配。我怀疑匹配器在到达字符串中的换行符时会停止匹配。而且必须有一个标志或其他东西来告诉匹配器扫描整个字符串。