从.net项目中检索所有字符串的方法?

时间:2009-05-02 11:58:02

标签: .net string

有没有办法在.net项目中列出所有字符串(不是在ressource中嵌入)? 我特别感兴趣的是消息箱字符串等,所以我可以检查是否所有内容都已被翻译和正确编写。到目前为止我尝试的所有工具只能列出ressoure字符串。

非常感谢任何帮助。

啊忘了说:我是一个运行Windows且只有Windows的Windows用户,所以请告诉我在Windows上运行的东西。我不介意一种不使用命令行工具黑客等的简单方法,但如果真的有必要,我肯定会这样做。

更新:可以在VS搜索中直接使用正则表达式,非常方便。

  

( “[^”] *“)

匹配所有字符串。但是我想列出至少包含一个空格字符的字符串。

Update2 “([^”])+:b +([^“])+”我需要什么。希望它可以帮助别人。

谢谢!

3 个答案:

答案 0 :(得分:7)

这应该在某种程度上有所帮助:

使用ildasm将IL转储到文件中。然后在PowerShell中运行它:

cat filename.il | where { $_.Contains("ldstr") }

答案 1 :(得分:1)

“([^”])+:b +([^“])+”这匹配所有至少包含一个空格字符的字符串。对我来说这已经足够了。如果需要,请随意修改。希望有所帮助。

答案 2 :(得分:0)

Mehrdad让ILDASM将IL输出转储到文件并搜索ldstr的想法非常出色。我承认,我从未想过使用这种方法。

如果您需要适用于Windows的GREP解决方案,我的最佳体验是使用RegexBuddy或它的大哥 - PowerGREP