如何在JAVA中使用正则表达式获取paranthesis之间的字符串? 例如:如果我有一个字符串abc(de)gh 然后我想要“de”Substing。
答案 0 :(得分:1)
正则表达式:\((?<TEXT>[^()]+)\)
或(?<=\()[^()]+(?=\))
<强>详情:
\(
匹配字符(
(?<TEXT>)
命名为Capture Group TEXT
[^()]+
匹配列表中不存在的单个字符
+
在一次和无限次之间匹配
\)
匹配角色)
答案 1 :(得分:0)
试试这个
public void test1() {
String str = "abc(de)gh(il)jk";
String regex = "\\((.*?)\\)";
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(str);
while (matcher.find()) {
System.out.println(matcher.group(1));
}
}