正则表达式:如何编写嵌套搜索模式?

时间:2014-09-08 13:21:12

标签: regex

我正在努力编写RegEx模式以找到这样的连续块:

伪代码:

any sub-string consisted of any number of characters
finished with DDCC
repeated many times

例如,我喜欢这样的字符串: 2342DDCC3423423DDCCfsfsfsfDDCC2weDDCC1312312qeqeDDCC 被发现。

第一部分很简单:[A-Za-z0-9]+DDCC

但是当我这样做时:[[A-Za-z0-9]+DDCC]+函数返回了一个空字符串。 如何编码模式的多次重复,内部具有重复语法本身?

2 个答案:

答案 0 :(得分:2)

怎么样:

([A-Za-z0-9]+DDCC)(?1)+

(?1)表示与第一个捕获组相同的模式。

答案 1 :(得分:0)

要捕获所有组,您可以使用以下表达式。

([A-Za-z0-9]+?DDCC)   // use global flag based on your language/tool

它将捕获以DDCC结尾的所有组。这里需要注意的重要一点是在?之后使用[A-Za-z0-9]会使匹配非贪婪。