我想搜索一个大写单词,例如文件中的COPYRIGHT.我尝试过执行搜索:
/copyright/i # Doesn't work
Run Code Online (Sandbox Code Playgroud)
但它不起作用.我知道在Perl中,如果我将i标志放入正则表达式,它会将正则表达式转换为不区分大小写的正则表达式.似乎Vim有自己的方式来表示不区分大小写的正则表达式.
在VisualStudio中似乎没有内置支持保存查找/替换的情况(另请参见相应的功能请求).
我的意思是:搜索'BadJob'并替换为'GoodJob'将进行以下替换
'badjob' -> 'goodjob'
'BadJob' -> 'GoodJob'
'badJob' -> 'goodJob'
'BADJOB' -> 'GOODJOB'
Run Code Online (Sandbox Code Playgroud)
所以我正在寻找一个宏/加载项,它实现了保存查找/替换的大小写.如果不存在,那么编写自己的开头是一个很好的起点(最好是基于内置的查找/替换功能).
更新:
我知道我可以做4个手动更换工作,但我正在寻找一种方法在VS中自动完成(例如Emacs这样做).一个常见的场景:名为'foo'的变量和一些函数DoFoo(),GetFoo(),...以及一些包含'foo''Foo'等的附加注释.现在将'foo'重命名为bar'让变量'bar' ,函数DoBar(),GetBar()等由ONE查找/替换.
可能重复:
在Vim中保留替代案例
是否可以在vim中进行搜索和替换以保留搜索词的大小写?这是我想念的一个有用的功能.
例如,类似于:
:s/[uU]ser/[pP]erson/ (obviously, this doesn't work)
Run Code Online (Sandbox Code Playgroud)
这样:
user->person
User->Person
Run Code Online (Sandbox Code Playgroud)
保留多个字符的另一个示例:
:s/[mM]y[uU]ser/[tT]his[pP]erson/g
Run Code Online (Sandbox Code Playgroud)
这样:
myuser->thisperson
myUser->thisPerson
MyUser->ThisPerson
Run Code Online (Sandbox Code Playgroud) 比方说我有:
foo and Foo
Run Code Online (Sandbox Code Playgroud)
我怎样才能找到并替换它
bar and Bar
Run Code Online (Sandbox Code Playgroud)
在Vim中使用一个regex/find和replace命令?默认情况下,我的Vim设置可以在搜索时找到大写和小写.现在我只想取代保留大写字母.这甚至可能吗?