%s@{fileID: \(213[0-9]*\)@\='{fileID: '.(submatch(1)-1900)@
我在vim中使用这个正则表达式搜索和替换命令从每个匹配的id中减去一个常量。
我可以在VSCode中找到正则表达式,但我如何引用数学的子匹配&替换?submatch(1)不工作在VSCode?
谢谢。
%s@{fileID: \(213[0-9]*\)@\='{fileID: '.(submatch(1)-1900)@
我在vim中使用这个正则表达式搜索和替换命令从每个匹配的id中减去一个常量。
我可以在VSCode中找到正则表达式,但我如何引用数学的子匹配&替换?submatch(1)不工作在VSCode?
谢谢。
当前回答
用一个例子来补充本杰明的回答:
Find Carrots(With)Dip(Are)Yummy
Replace Bananas$1Mustard$2Gross
Result BananasWithMustardAreGross
括号中的任何内容都可以是正则表达式。
其他回答
给定(foobar)的正则表达式,如果在replace输入字段中有更多组,则可以使用$1引用第一个组,以此类推。
另一个简单的例子:
Search: style="(.+?)"
Replace: css={css`$1`}
有用的转换HTML到JSX与情感/css!
又一个让人想明白的例子。
在本例中,我将####添加到字符串的开头,并将第一个组$1放在后面。组(.*)之外的所有内容都将被删除。
<h4.*">(.*)</h4>
#### $1
# before:
<h4 id="extract-inline-json-with-regex">Extract inline JSON data with Regex</h4>
# after:
#### Extract inline JSON data with Regex
在我的例子中,1美元行不通,但0美元就可以了。
在这种情况下,我试图用正确的格式替换字符串,在Laravel中翻译它们,我希望这对其他人有用,因为我花了一段时间来整理它!
Search: (?<=<div>).*?(?=</div>)
Replace: {{ __('$0') }}
Regex替换字符串的Laravel翻译
用一个例子来补充本杰明的回答:
Find Carrots(With)Dip(Are)Yummy
Replace Bananas$1Mustard$2Gross
Result BananasWithMustardAreGross
括号中的任何内容都可以是正则表达式。