从这个描述中,我理解你想要选择所有不包含 :
的行。
为了实现这一目的,您可以使用以下正则表达式:
^([^:]+)$
只需使用这个模式,并设置选项g
表示全局匹配和m
表示多行匹配:
^([^:]*)$
*
更改为 +
,如果您不想捕获空行(您未指定)。我认为(.*:.*)的意思是,0或多个任意字符,后跟“:”,后跟0或多个任意字符。因此以下内容将匹配:
基本上,如果我们将其分解,我们要寻找不包含“:”字符的任何行。因此,像这样的东西就可以工作。
^[^:]+$
^(?!(.*:.*)).*(\n|$)
?!(.*:.*)
是负向前瞻,以确保前面没有与 .*:.*
匹配的模式。
此类零个或多个字符的行由以下的 .*
匹配,并且后面必须跟换行符 (\n) 或字符串结尾 ($)。
-v
标志,它可以反转结果,即显示所有不匹配所传入模式的行。 - Squidly