我想问一下如何制作一个正则表达式,它将选择所有不包含此模式的行:(.*:.*)
我试过这样
^((?!(.*:.*)).)*$
从这个网站,但我无法让它工作。
在我看来,您正在尝试选择所有不包含:
.
为此,您可以使用以下正则表达式:
^([^:]+)$
我相信 (.*:.*) 的意思是,0 个或多个任何字符,后跟 ':',然后是 0 个或多个任何字符。所以以下内容将与之匹配。
基本上,如果我们将其分解,我们正在寻找任何不包含 ':' 字符的行。所以这样的事情会起作用
^[^:]+$
使用以下正则表达式:
^(?!(.*:.*)).*(\n|$)
?!(.*:.*)
是一个负前瞻,以确保前面没有模式匹配.*:.*
。
此类具有零个或多个字符的行由以下内容匹配,.*
并且必须跟在换行符 (\n) 或字符串结尾 ($) 之后。