gpt4 book ai didi

regex - 在 vim 上搜索并转换为小写

转载 作者:太空宇宙 更新时间:2023-11-04 05:13:30 25 4
gpt4 key购买 nike

我有一个带有 object.attribute 的代码,其中属性可以是数组例如:object.SIZE_OF_IMAGE[0] 或一个简单的字符串。我想搜索所有出现的 "object.attribute" 并将其替换为 self.lowercase(attribute) 我想要 vim 上的正则表达式来执行此操作。

我可以使用该 :%s/object.*/self./gc 并手动替换它,但速度非常慢。

以下是一些示例:

object.SIZEself.size

object.SIZE_OF_IMAGE[0]self.size_of_image[0]

最佳答案

你基本上只需要两件事:

  • 捕获组 :help /\( 让您存储 \(...\) 之间匹配的内容然后在替换中(甚至之后在模式本身中)引用它(通过 \1\2 等)。
  • :help s/\L 特殊的替换操作,使所有内容都变成小写。

这将为您提供以下命令:

:%substitute/\<object\.\(\w\+\)/self.\L\1/g

注释:

  • 我在开头建立了一个关键字开始断言 ( \< ) 以避免匹配 schlobject也是如此。
  • \w\+匹配字母、数字和下划线(因此它满足您的示例);这里可以有多种替代方案。

关于regex - 在 vim 上搜索并转换为小写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52409454/

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