假设我有以下三个字符串:
(section1){stuff可能是任何角色,我想全部抓住}
(section1)(section2){stuff可以是任何角色,我想全部抓住}
(section1)(section2)(section3){stuff可能是任何角色,我想全部抓住}
因此,如果将regex应用于我的表达式,那么我会得到第一个:
SECTION1
东西可以是任何角色,我想抓住它们
如果将regex应用于我的表达式,那么我会得到第二个:
SECTION1
第2节
东西可以是任何角色,我想抓住它们
如果将regex应用于我的表达式,那么我会得到第三个:
SECTION1
第2节
SECTION3
东西可以是任何角色,我想抓住它们
我有以下正则表达式:
((小于?节>。+))+ {<术语GT; +}
所以寻找内部的parens并重复然后在花括号内的内容。 它似乎不起作用 任何线索?这一直是我的Achille的脚跟。
答案 0 :(得分:2)
(?<section>\(.+?\))+?(?<term>\{.+\})
可能更接近你正在寻找的东西。
这将匹配您拥有的许多( N )段以及{term}
答案 1 :(得分:0)
我不太明白你想要什么,但无论如何我都会试着回答
(\(section1\)(\(section2\)(\(section3\))?)?)(.*)
那将匹配(和捕获)(section1),然后是其他东西(或什么都没有),并且可选地后面跟着一个(section2),然后可以选择性地跟随(section3)
我几乎可以肯定这不是你需要的,但至少会提示你更好地描述你的问题: - )
答案 2 :(得分:0)
在编写正则表达式时要记住一件事,出现括号{}包含数字,而不是外卡。
<regex>{3} //will match three exactly
<regex>{0,3} // will match up to and including three
<regex>{3,} // will match three or more
在尝试编写模式时,使用实用程序来测试字符串也很不错。这是one such online tool