我想在一个句子中匹配*instance*stuck*
的模式,实例和卡住之间的单词数量可以是1到3.如何用Java中的正则表达式编写这个模式?
例如:
答案 0 :(得分:4)
您可以尝试以这种方式进行测试
String s1 = "The instance just got stuck";
String s2 = "The instance in the server 123 at xyz is stuck";
System.out.println(s1.matches(".*instance (\\w+\\s+){1,3}stuck.*")); // true
System.out.println(s2.matches(".*instance (\\w+\\s+){1,3}stuck.*")); // false
\\w
匹配任何字母数字字符,就像[a-zA-Z0-9]
\\s
是空间的类
+
表示必须至少找到+
之前的元素。
答案 1 :(得分:0)
答案 2 :(得分:0)
试试这个:instance( \w+){1,3} stuck
答案 3 :(得分:0)
也许:
instance (\w* ){0,3}stuck
这也将与古怪的空白相匹配:
instance\s*(\w*\s*){0,3}stuck