'如果'没有'其他'C#

时间:2009-02-16 08:12:06

标签: c#

我在C#1.1编码。

我希望找到一个没有'else'子句的所有'If'子句。有什么简单的方法吗?

我问这个问题,因为我从我的客户端获得了一个项目源文件,该文件有许多没有ELSE子句的IF子句。这导致了很多错误。所以,我想扫描我的源文件,看看是否有任何没有ELSE子句的IF子句。

感谢

3 个答案:

答案 0 :(得分:4)

如果没有漂亮的工具可用:

  1. 如果在所有文件中搜索单个字。获取包含文件名和行号的文件。
  2. 在所有文件中搜索其他单词。获取包含文件名和行号的文件。
  3. 在第一个文件中,为每行添加“if”,在第二个文件中添加“else”
  4. 合并文件
  5. 按文件名,亚麻,(如果/其他)
  6. 排序
  7. 删除所有ifs后跟一个else。
  8. 现在你已经有了几乎没有其他ifs的列表。

    此方法会产生一些误报,因为它不会考虑注释代码。但如果没有可用的工具,这是一个公平的选择。

答案 1 :(得分:2)

没有简单的方法。

使用 ctrl + shift + F 在项目范围内搜索 if 语句。 然后快速双击结果。

或许您可以使用查找选项/使用/正则表达式,但我认为这不是一个好选择。

答案 2 :(得分:0)

我认为您可能需要使用堆栈,因为if可能在另一个内部。每当你找到一个if时,就推到堆栈上。现在寻找短语的结尾。这意味着要么;或匹配花括号。之后,检查其他。弹出堆栈。