我想标准化比较C#文件中的两个字符串时使用的语法。所以我想使用Visual Studio 2013的Find&替换功能以更改用于将字符串文字与字符串变量进行比较的语法。
例如,我希望进行以下替换。
"something".Equals( myStr )
变为myStr == "something"
"something".Equals( myObj.myStr )
变为myObj.myStr == "something
“myStr.Equals( "something" )
变为myStr == "something"
myObj.myStr.Equals( "something" )
变为myObj.myStr == "something
“我无法对使用的特定字符串文字或如何命名变量做出任何假设。什么是使这成为可能的正则表达式语法?
答案 0 :(得分:2)
您必须为每种不同类型的字符串执行两次替换:
("[^"]+")\.Equals\(\s+(\S+)\s+\)
替换为前两种类型的$2 == $1
。
和
(\S*?)\.Equals\(\s+("[^"]+")\s+\)
替换为$2 == $1
后两种类型。