gpt4 book ai didi

regex - Vim正则表达式匹配带前缀和后缀的字符串

转载 作者:行者123 更新时间:2023-12-03 10:27:21 65 4
gpt4 key购买 nike

我想在vim中搜索以“abc”开头并以“xyz”结尾的字符串。

以下是我尝试过的命令:

:1,$g/abc[\w\W]*xyz/
:1,$g/abc\[\\w\\W\]\*xyz/
:1,$g/abc*xyz/

“[\ w \ W] *”表示“abc”和“xyz”之间的文本可以是任何字符

“1,$”表示搜索范围是从vim打开的文件的第一行到最后一行。

我发现搜索模式
abc[\w\W]*xyz 

https://regex101.com/中工作

为什么它在vim中失败了?

最佳答案

除非“任何字符”对您和Vim有所不同,否则以下命令应该可以使用:

:g/abc.*xyz
  • .的意思是“除EOL以外的任何字符”。
  • *的意思是“前一个原子的任何数字(包括0)”。
  • 1,$可以缩短为%
  • :global默认情况下适用于整个缓冲区,因此您甚至不需要%
  • 如果您不像/那样通过命令遵循:g/pattern,则不需要结束:g/foo/d
  • 关于regex - Vim正则表达式匹配带前缀和后缀的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30975389/

    65 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com