我需要一个vim命令来删除文件中所有行的特定单词之前的所有字符
例如: 输入:
asdfasdfasdfscccHello
qwerqwerHello
24351243vsfgertHello
输出:
你好
你好
你好
pfn*_*sel 36
如果要在"Hello"之前删除所有字符,则可以执行此操作
:%s/.*Hello/Hello/
Run Code Online (Sandbox Code Playgroud)
请注意,这.*是贪婪的,即它会吃掉所有出现的"Hello",直到找到最后一个.如果你有一条线:
abcHellodefHelloghi
Run Code Online (Sandbox Code Playgroud)
它会成为
Helloghi
Run Code Online (Sandbox Code Playgroud)
如果你想要一个非贪婪的解决方案,试试吧
:%s/.\{-}Hello/Hello
Run Code Online (Sandbox Code Playgroud)