我成功捕获了以冒号结尾的连续组,但我不知道如何让每个捕获在替换中重复,并带有反向链接引用。这是一个示例干草堆:
body .wpCSS {
font-size:14px;
font-size:1rem;
color:#444;
}
div .vaCSS {
font-size:12px;
font-size:.8rem;
color:#555;
}
以下是捕获以下内容的正则表达式:从左括号到第一个冒号,然后到每个冒号,然后到右括号。非贪婪,因此每次只匹配一个部分。
\{(.*?:)+?(.*?)\}
我希望替换操作在每个冒号后插入一个空格。我尝试了所有我能想到的反向链接引用、嵌套等,但我可以让反向链接引用只作用于第一个或最后一个冒号部分。我正在尝试在任何 haystack 大小上进行反向链接引用,在每个冒号后插入空格。注意:我使用的是 Notepad++,我将点设置为匹配新行,这就是点处理新行的方式。
答案1
perl
s/([^:]*:)/\1 /g;
对我有用;在每个冒号后插入一个空格。
仅在花括号内
s/([^}:]*:)(?=[^{]*[}])/\1 /g;