Java正则表达式检查包含单词

时间:2013-12-12 12:43:36

标签: java regex

我有一个声明(st1):

cat#n#1

和另一个声明(st2)我想检查它是否包含'“cat”和“n#1”。

dog, rabbit, cat#n#1

我试图通过以下方式进行模式检查:

if(Pattern.compile(Pattern.quote(st1), Pattern.CASE_INSENSITIVE).matcher(st2).find())

它适用于cat#n#1的情况。但如果句子是狗,鱼,猫#n#1则它不起作用。我想这是因为句子与st1不完全相同。

我已经完成了很多正则表达式读取和使用String.contains(),String.matches(),String.equals()和Pattern方法进行实验,但我无法让它按照我的意愿工作。

例如

if(st2.toLowerCase().contains("cat") && st2.toLowerCase().contains("n#1")) 

返回true超过正确的1个正确答案。这些错误的答案可以是例如:

dog, fish, bird, eagle, cat, thing#n#4

所以我希望在这里做一点澄清,谢谢:)。

编辑: 我需要在开始或结束时添加关于何时完成检查的细节。所以我需要找到解决方案并再试一次,谢谢:)

0 个答案:

没有答案
相关问题