以字符串开头并以 ')' 结尾且多次出现的正则表达式模式
Regex pattern starting with a String and ending with ')' with multiple occurances
请给我建议正则表达式模式:
字符串:
this is text ) doing regex test. Error Caused by: faulty pattern (com.test.Validator.java:32) few more text Error Caused by: faulty pattern (com.test.Validator2.java:65) few more text
需要提取:
Caused by: faulty pattern (com.test.Validator.java:32)
and
Caused by: faulty pattern (com.test.Validator2.java:65)
正则表达式模式使用:
Caused by:(.?)([^)])
问题:
- 只给我第一次出现。
- ')' 被排除
您可以使用这个正则表达式:
Caused by:[^)]+\)
请注意,对于多个 macthes,您需要 g
修饰符。
在 Java 中,您需要一个额外的反斜杠:
Caused by:[^)]+\)
此正则表达式匹配 Caused by
后跟正数字符()
除外)后跟 )
.
假设您总是希望匹配第一个右括号。
Caused by:.*?\)
对于Java你可以使用下一个:
Pattern p = Pattern.compile("Caused by: [^)]+\)");
Matcher m = p.matcher("Caused by: faulty pattern (com.test.Validator.java:32) and Caused by: faulty pattern (com.test.Validator2.java:65)");
while(m.find()){
System.out.println(m.group());
}
请给我建议正则表达式模式:
字符串:
this is text ) doing regex test. Error Caused by: faulty pattern (com.test.Validator.java:32) few more text Error Caused by: faulty pattern (com.test.Validator2.java:65) few more text
需要提取:
Caused by: faulty pattern (com.test.Validator.java:32) and Caused by: faulty pattern (com.test.Validator2.java:65)
正则表达式模式使用:
Caused by:(.?)([^)])
问题:
- 只给我第一次出现。
- ')' 被排除
您可以使用这个正则表达式:
Caused by:[^)]+\)
请注意,对于多个 macthes,您需要 g
修饰符。
在 Java 中,您需要一个额外的反斜杠:
Caused by:[^)]+\)
此正则表达式匹配 Caused by
后跟正数字符()
除外)后跟 )
.
假设您总是希望匹配第一个右括号。
Caused by:.*?\)
对于Java你可以使用下一个:
Pattern p = Pattern.compile("Caused by: [^)]+\)");
Matcher m = p.matcher("Caused by: faulty pattern (com.test.Validator.java:32) and Caused by: faulty pattern (com.test.Validator2.java:65)");
while(m.find()){
System.out.println(m.group());
}