使用正则表达式查找字符串中是否存在一个不带空格的字符串

时间:2018-02-18 16:05:26

标签: java regex

我想在Java中使用正则表达式检查字符串中是否存在多个子字符串之一。

SomeString: randomtextrickmortysummergazorpazorp
Output needed: true

我尝试使用下面的模式,但它返回false

String patternString = "rick|morty";
String text = "randomtextrickmortysummergazorpazorp";

Pattern pattern = Pattern.compile(patternString, Pattern.CASE_INSENSITIVE);
Matcher matcher = pattern.matcher(text);

System.out.println("Matches :" + matcher.matches());

请帮助。

1 个答案:

答案 0 :(得分:2)

这是因为matches()只返回true,如果整个字符串与您的模式匹配。请改用find()

matches():

  

尝试将整个区域与模式匹配。

System.out.println("Found :" + matcher.find());

find()

  

尝试找到与模式匹配的输入序列的 next subsequence