对 Vim 中包含一个或多个关键字的行进行操作
Operations on lines containing one or more keyword in Vim
如果我想在包含某个关键字的所有行上运行相同的命令,我可以使用全局命令,或者对包含该关键字的 not 行使用 vglobal 命令。
例如,如果我有一个包含以下内容的文本文件:
hello world
testing with foo
another test with bar in it
another foo line
last test line
:g/foo/d
删除所有包含单词 foo
的行给我:
hello world
another test with bar in it
last test line
我可以使用此命令对包含一个或多个多个单词的行进行操作吗?类似于 OR 语句的东西。例如,删除所有包含单词 foo
OR bar
的行,给我:
hello world
last test line
谢谢
是的,您可以在正则表达式中使用 \|
运算符。所以:
:g/foo\|bar/d
全局命令以正则表达式作为输入。所以你只需要对 or
.
使用交替 (\|
)
:g/foo\|bar/d
将删除包含 "foo" 或 "bar" 的行。
如果我想在包含某个关键字的所有行上运行相同的命令,我可以使用全局命令,或者对包含该关键字的 not 行使用 vglobal 命令。
例如,如果我有一个包含以下内容的文本文件:
hello world
testing with foo
another test with bar in it
another foo line
last test line
:g/foo/d
删除所有包含单词 foo
的行给我:
hello world
another test with bar in it
last test line
我可以使用此命令对包含一个或多个多个单词的行进行操作吗?类似于 OR 语句的东西。例如,删除所有包含单词 foo
OR bar
的行,给我:
hello world
last test line
谢谢
是的,您可以在正则表达式中使用 \|
运算符。所以:
:g/foo\|bar/d
全局命令以正则表达式作为输入。所以你只需要对 or
.
\|
)
:g/foo\|bar/d
将删除包含 "foo" 或 "bar" 的行。