我想从文件中选择与特定模式不匹配的所有行; 我知道我必须使用select-string的-notMatch选项,但我无法弄清楚如何。 (我正在寻找类似GREP -v功能的东西) 任何例子都会有用。 提前谢谢。
答案 0 :(得分:4)
我认为你仍然希望match
而不是notmatch
。要排除函数返回类型或注释,您需要“负面看待asserion”。也许这会满足你的需求?
$f = 'my_function'
select-string test.txt -Pattern "(?<!(void|double|char|int)\s+|//.*)\b$f\b"
如果在源文本中找到“...”,则(?<!...)
部分说不匹配。
答案 1 :(得分:4)
您是否可以使用以下
-notmatch "(?<!(void|double|char|int)\s+|//.*)\b$f\b"