如何在JAVA中检查String文件时排除逗号?

时间:2013-01-21 20:28:55

标签: java regex string contains

我正在尝试在java中检查特定单词的String文件。

示例:

    public String test()    {
                    String text= "Your, me, everybody";

        if(!text.contains("You"))
            test1+= " and all!";
        return test1;
    }

编辑:感谢您的回复。但我需要的是:我的文字充满了文字和逗号。如果并且只有单词text.contains(you)或text.matches,如果该单词不在String中,那么它将被添加。但是,如果我尝试将示例结束,它会在文本中说“你”,因此不会执行 test1 + =“和所有!”; 在这个特殊的例子中它不那么危险,但是当我有一个大约100个单词的字符串时,有一些非常相似。或者以相同的字母开头或背后有逗号。

2 个答案:

答案 0 :(得分:3)

只需使用text.contains("You") - String.contains()将CharSequence作为参数。不需要正则表达式。

请注意,如果charSequence完全在字符串中,那么匹配“Your”,例如。这个特别的演示快速而肮脏 - 但我不建议(除非你想要这种行为)。

您需要将String.matches(String regex)用于相应的正则表达式 - 如其他答案中所详述。

答案 1 :(得分:2)

首先,contains()采用文字字符串而不是正则表达式。其次,\b在字符串文字(it's the backspace character)中具有特殊含义。

如下:

    if(!text.contains("\bYou\b"))

需要成为

    if(!text.matches(".*\\bYou\\b.*"))