正则表达式在Java中查找包含3个字母的单词
我想找到每个元素中有3个字母的所有单词
在this post中,我找到了正确的正则表达式,但我知道我正在努力让它在Java中工作
Set<String> input = new HashSet<String>();
input.add("cat 123");
input.add("monkey");
input.add("dog");
Pattern p = Pattern.compile("\b[a-zA-Z]{3}\b");
for (String s : input) {
if (p.matcher(s).matches()) {
System.out.println(s);
}
}
在我的例子中,我希望cat
和dog
被输出,但我只得到一个空输出
# 1 楼答案
您必须避开反斜杠,即
\\b
而不是\b
:创建匹配器并使用
find
和group
查找并显示下一个匹配的组: