我有这小段代码
String[] words = {"{apf","hum_","dkoe","12f"};
for(String s:words)
{
if(s.matches("[a-z]"))
{
System.out.println(s);
}
}
应该打印
dkoe
但是它什么也没打印!
是的@Robino,您绝对正确。
—
米希尔(Mihir)'18
当然,如果您希望
—
PhilHibbs
matches
寻找的任何出现[a-z]
,那么它应该与它们全部匹配吗?我不希望matches
针对正则表达式单独检查每个字符。
@Robino:在哪里描述/记录了该功能?
—
托鲁
@Toru在String.Matches的Java文档页面上-还有其他地方?随意的Google“ java字符串匹配文档”显示在顶部结果中,短语“ str.matches(regex)产生与表达式完全相同的结果”。重要的词是“完全”。
—
Robino
matches
为您在正则表达式的开头加一个^,在结尾加一个$。因此,matches("[a-z]")
实际上将查找/ ^ [az] $ /。