在 vi 编辑器中删除行,如果特定字符串(直到行尾)匹配

Deletion of line in vi editor,if particuar string(till the end of line.) matches

在vi编辑器中,如果特定的字符串匹配,则删除那些字符串直到行尾。 表示如果行是

"I found a good solution for my bill printing task and it is working properly for me."

要签入文件的字符串是

"working properly"

比输出将是

"I found a good solution for my bill printing task and it is "

我知道如何删除文件中每一行的最后一个字符,然后命令:-- esc:%s/.$//g 但我不得不一次又一次地发出这个命令。

把你要匹配的字符串放在正则表达式的开头即可:

%s/working properly.*//

我相信使用

%s/\<working properly.*//g

合适。它只会匹配完整的单词。

例如:它将匹配 working properly 但不匹配 networking properly.