使用正则表达式查找“​​%”

使用正则表达式查找“​​%”

我正在用 Java 编程,我想使用正则表达式查找任何带有百分号的数据,例如 10%、20%、30% 等。我试过了,a.matches("%")但只有当字符串与百分号完全匹配时才会返回 true。正确的正则表达式应该是什么?谢谢

答案1

如果您只是在寻找“%”,那么String.indexOf('%')可能比任何基于正则表达式的解决方案更快、更简单。

考虑正则表达式,该matches()函数尝试将整个字符串与模式匹配,正如您所发现的。Matcher.find()将在字符串中查找与模式匹配的子字符串,例如:

Pattern pp = Pattern.compile("%");
Matcher mm = pp.matcher(someString);
if (mm.find()) {
    // someString contains a '%'
    ...
}

相关内容