考虑以下正则表达式:
([a-zA-Z])([a-zA-Z]?)/([a-zA-Z])([a-zA-Z]?)
如果文本是:a/b
捕获组将是:
/1 'a'
/2 ''
/3 'b'
/4 ''
Run Code Online (Sandbox Code Playgroud)
如果文本是:aa/b
捕获组将是:
/1 'a'
/2 'a'
/3 'b'
/4 ''
Run Code Online (Sandbox Code Playgroud)
假设,我想在Notepad ++中查找并替换此字符串,以便if /2或/4为空(如上面的第一种情况),我预先添加c.
所以,文本a/b变成了ca/cb.文本aa/b变成了aa/cb
我使用以下正则表达式替换:
(?(2)\1\2|0\1)/(?(4)\3\4|0\3)
Run Code Online (Sandbox Code Playgroud)
但Notepad ++ ?在这种情况下是字面上的处理,而不是条件标识符.知道我做错了什么吗?