目前我正在尝试构建一个(C# - )Regex来重命名C#-Sourcefile中的变量。它应该避免DllImports,并避免重命名字符串内容,并避免重命名包含要替换的名称的变量(例如,当要替换“Test”时不要替换“anotherTest”)。 那么正则表达式工作,但它真的很慢。 RegexBuddy告诉我调试这个输入需要411步(是的,我知道它是完全愚蠢的代码,但它是用于测试目的):
[DllImport(“user32.dll”)] [return:...] public extern int test();
“测试”
“” 测试
testProcess.StartInfo.Arguments =(start + \“\”\“”+ test +“\”)“);
由于我是Regex的新手,我不知道在哪里改进它...我希望有人可以帮助我......
这是(C# - )正则表达式本身:
(?<!\[DllImport\(.*\)\]\s*\r\n(|\[return\:.*\]\s*\r\n).*)(?((?<![\"\'][^+=]*))|(?![^+=]*[\"\']))(?<![\w_]+?)test(?![\w_]+?)