Powershell -如何从文件夹's .cs文件中找到所有匹配正则表达式的字符串
本文关键字:字符串 正则表达式 文件 cs 文件夹 Powershell | 更新日期: 2023-09-27 18:06:54
我想从所有.cs类文件中找到所有字符串(在双引号内),除了注释(双斜杠)。这就是我到目前为止所做的,它不会忽略注释行,也不只是返回字符串本身(双引号内的内容)。有人能帮我改进这个Powershell脚本吗?谢谢你!我正在运行Win7
gci -path C:'Working'MyFolder -Include *.cs -Exclude *Designer.cs, *AssemblyInfo.cs -Recurse |
select-string -pattern ''"[^'"]*'"' | export-csv oput.csv
你可以试试这个吗:
select-string -pattern '(?<!([/]{2}.*))'".*'"'
使用Positive and Negative look在后面可以这样翻译:
'".*'"
查找双引号之间的任何字符
(?<!([/]{2}.*))
放在前面表示:前面没有[/]{2}.*
(两个/后面有任何字符)
如果您想检索字符串本身:
gci -path C:'Working'MyFolder -Include *.cs -Exclude *Designer.cs, *AssemblyInfo.cs -Recurse |get-content | % {if ($_ -match '(?<!([/]{2}.*))'"(.*)'"'){$matches[0]}}