我需要使用模式捕获一个单词并将其存储在某个地方以便在替换操作中使用:
例如,我有这段文字
ab iiids
as sasas
md aisjaij
as asijasija
我可以使用以下模式捕获第一个空格之前的所有内容:
.*?(?=[" "])
假设我可以使用“$”来表示搜索和替换中的匹配项,因此我希望在替换字段中输入以下内容
INSERT INTO table (value) VALUES ("$")
找不到解决方案。 这真的可能吗?
$&
或 $0
代表完整的匹配内容:Find what: .*?(?=[ ])
Replace with: INSERT INTO table \(value\) VALUES \("$0"\)
INSERT INTO table (value) VALUES ("ab") iiids
INSERT INTO table (value) VALUES ("as") sasas
INSERT INTO table (value) VALUES ("md") aisjaij
INSERT INTO table (value) VALUES ("as") asijasija
对于更高级的用例,您可以在正则表达式中括起部分内容,并使用$1
、$2
等引用它们匹配的子字符串。
顺便说一下,更明确的模式将是:
^[^ ]*(?=[ ])
(a)bc
,它将匹配abc
。替换看起来像$1foo
。因此,如果输入为abc
,则输出将是afoo
。 - HamZa