需要使用以“Contains”开头并以“。”结尾的正则表达式来查找字符串的匹配。
String statement="SOME TEXT Contains one, ones and onness. SOME TEXT Contains two. Contains three";
预期匹配:1)Contains one ones and onness.
2)Contains two.
不应匹配:Contains three
,因为它不以“。”结尾。
目前我在我的java代码中使用以下正则表达式,并且最终得到的上述内容也不符合标准。
Contains[^\.]*
- //正则表达式中的任何内容都以“包含”开头,后跟“。”之外的任何内容。
有关正则表达式符合我要求的任何想法吗?
答案 0 :(得分:2)
您可以使用以下正则表达式:
"Contains[^.]+\\."
第二个点被转义为字面上匹配.
。
答案 1 :(得分:1)
.
不能急于求成。
"Contains.*?\\."
答案 2 :(得分:0)
试试这个正则表达式:
public static void main(String... strings) {
String statement="SOME TEXT Contains one, ones and onness. SOME TEXT Contains two. Contains three";
Pattern p = Pattern.compile("(Contains.*?\\.)");
Matcher m = p.matcher(statement);
while(m.find()){
System.out.println(m.group(1));
}
}
O / P:
Contains one, ones and onness.
Contains two.