我正在用 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 '%'
...
}