我有以下文字:
.clk,
.rst_b,
.phase_in
我想要以下内容:
.clk(clk),
.rst_b(rst_b),
.phase_in(phase_in)
那是 -
Notepad ++具有“查找和替换”功能而不是“查找和追加”功能,因此第二步可以写成如下 - 用自身的副本替换字符串,然后用括号括起来的副本。
第一步由\.\w+
完成。有关第2步的任何想法吗?
谢谢!
答案 0 :(得分:2)
是的,你可以!使用捕获组来引用替换中匹配的单词。
将\.(\w+)
替换为.\1\(\1\)
。
括号表示我们希望保留对\w+
的引用。我们在替换中使用\1
访问该引用。
答案 1 :(得分:2)
您可以使用以下正则表达式。这会捕获点后面的单词字符。
Find: ^\.(\w+)
Replace: .\1\(\1\)
<强>解释强>:
^ # the beginning of the string
\. # '.'
( # group and capture to \1:
\w+ # word characters (a-z, A-Z, 0-9, _) (1 or more times)
) # end of \1
在替换中,我们使用\1
来引用捕获组#1
匹配和捕获的内容。 注意:您需要在替换中转义括号以实际显示它们。
答案 2 :(得分:1)
使用\1
查找\.(\w+)
并替换为\.\1\(\1\)
答案 3 :(得分:0)
找到:\.([^,]+)
替换:.$1\($1\)
确保选中正则表达式单选按钮,并取消选中与新行匹配的点。
模式说明:
\. '.'
( group and capture to \1:
[^,]+ any character except: ',' (1 or more times)
) end of \1
答案 4 :(得分:0)
您可以使用这样的简单正则表达式: