【问题标题】:vim search and replace with arithmetic (C pointer)vim 用算术搜索和替换(C 指针)
【发布时间】:2020-03-20 19:39:55
【问题描述】:

我想搜索和替换一个指针

char* test

但是,当我输入时

:%s/char* test/something/g

我明白了

E486: Pattern not found: char* test

我认为这是由于 vim 试图在搜索中使用正则表达式。

我该如何解决这个问题?这样的文字可以替换吗?

【问题讨论】:

    标签: c search vim replace


    【解决方案1】:

    您需要转义星号。这应该有效:

    :%s/char\* test/something/g
    

    【讨论】:

      【解决方案2】:
      %s/char[[:blank:]]*[*][[:blank:]]*test/something/g
      

      [[:blank:]]*[*][[:blank:]]* :仅替换出现在任意数量的空格或制表符之间的“一个”*。 [1]

      [1]What's the difference between [:space:] and [:blank:]?

      【讨论】:

        【解决方案3】:

        如果您想完全禁用正则表达式,我找到了另一种解决方案

        :%sno/char* test/something
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2011-05-04
          • 1970-01-01
          • 1970-01-01
          • 2012-07-27
          • 1970-01-01
          相关资源
          最近更新 更多