在C#VS2008中如何替换intA =(int)obj.GetStr(“xxx”); to intA = int.Parse(obj.GetStr(“xxx”));

时间:2009-07-06 20:29:27

标签: c# vb.net

在C#VS2008中如何替换

intA = (int)obj.GetStr("xxx");  

intA = int.Parse(obj.GetStr("xxx"));

我有很多行代码都有这种模式。我只想通过使用一些正则表达式来传递编译。

4 个答案:

答案 0 :(得分:2)

尝试使用以下正则表达式进行搜索和替换:

编辑:将AAA,BBB,CCC值替换为您要匹配和替换的相应方法名称。小心使用:i(标识符)匹配谓词,因为它匹配任何方法调用 - 您可能不需要。

查找:(查找对GetStr的任何表达式的任何调用)

\(int\){.+}\.{(GetStr|AAA|BBB|CCC)}\({.*}\);

替换为:

Convert.ToInt32(\1.\2(\3));

或(正如其他人提到的那样)替换为:

Int.Parse(\1.\2(\3));

答案 1 :(得分:1)

我也不喜欢新版本。当您知道自己有字符串时,int.Parse()int.TryParse()可能更合适。

答案 2 :(得分:0)

您是否尝试过搜索和替换?

搜索'intA =(int)obj.GetStr(“',替换为'intA = Convert.ToInt32(obj.GetStr(”'。。

答案 3 :(得分:0)

这是LBushkin建议的变体:

find: \(int\){:i\.:i\(:q\)}
replace: int.Parse(\1)