模式匹配Java Regex - “一个或多个”运算符

时间:2013-02-25 03:43:25

标签: java regex

如何在regex for Java中使用“一个或多个”运算符?例如,我想匹配这个:

((a)(b)(c)) - 匹配

((a)) - 匹配

其中a,b,c是任何字符或数字

此表达式的基本描述是一组括号中的括号组,其中包含由一个空格分隔的所有集合

1 个答案:

答案 0 :(得分:13)

你想要类似的东西 \((\(\w*\))+\)

为了更清楚地了解它是如何工作的,请在视觉上进行扩展:

\(    # outer bracket
(     # start of group
\(    # inner bracket
\w*   # 0 or more word characters ([0-9a-zA-Z_])
\)    # inner bracket
)     # end of group
+     # and we do that group 1 or more times
\)    # outer bracket

说明:如果你申请*或+或?对于仅在(非转义)括号中的内容,它将应用于括号的整个内容,而不是仅应用于一个元素。

每当我有正则表达式问题时,我会在http://www.regular-expressions.info/reference.html

中查找