Mr.*_*r.Z 7 regex pcre notepad++
是否有可能定义一部分模式然后命名它,以便它可以在主模式中多次重复使用而不必再次写出来?
要绘制图片,我的模式看起来与此类似(伪正则表达式模式)
(PAT),(PAT), ... ,(PAT)
Run Code Online (Sandbox Code Playgroud)
哪个PAT是冗长的模式.
要求
([a-z]),([a-z]),([a-z])则a,a,a与a,b,c应匹配我已经研究了命名第一个捕获组然后在后续捕获组中引用它,但是这个方法打破了第二个要求(即,它无法匹配a,b,c).是否有直接或间接的方法来仅使用正则表达式来满足这两个要求?
我的最终目标是能够获取和访问每个捕获组的值,以便稍后在搜索和替换框的"替换"部分中操作每个组.
Tot*_*oto 13
为了重复一个模式,你可以使用(?n)那里n是重复组的数量.例如,您的实际模式:
(PAT),(PAT), ... ,(PAT)
Run Code Online (Sandbox Code Playgroud)
可以替换为:
(PAT),(?1), ... ,(?1)
Run Code Online (Sandbox Code Playgroud)
(?1)是(PAT)什么样的模式PAT.
您可能有多种模式:
(PAT1),(PAT2),(PAT1),(PAT2),(PAT1),(PAT2),(PAT1),(PAT2)
Run Code Online (Sandbox Code Playgroud)
可以简化为:
(PAT1),(PAT2),(?1),(?2),(?1),(?2),(?1),(?2)
Run Code Online (Sandbox Code Playgroud)
要么:
((PAT1),(PAT2)),(?1),(?1),(?1)
Run Code Online (Sandbox Code Playgroud)
要么:
((PAT1),(PAT2)),(?1){3}
Run Code Online (Sandbox Code Playgroud)