我想从文件中选择与特定模式不匹配的所有行;
我知道我必须使用选择字符串的-notMatch选项,但我只是不知道如何。
(我正在寻找类似GREP的-v函数)
任何示例都是有用的。
提前致谢。

最佳答案

我认为您仍然想要match而不是notmatch。要排除函数返回类型或注释,您需要“对asserion的负面印象”。也许这会满足您的要求?

$f = 'my_function'
select-string test.txt -Pattern "(?<!(void|double|char|int)\s+|//.*)\b$f\b"

如果此时在源文本中找到“...”,则(?<!...)部分说不匹配。

07-24 17:02