使用正则表达式查找替换以保留括号中的内容
Find replace using regular expression to keep what is in brackets
鉴于我有 1000 的...
LegacyProject.LegacyNameSpace.LegacyClass.LegacyMethod("blah");
...
LegacyProject.LegacyNameSpace.LegacyClass.LegacyMethod("foo");
...
LegacyProject.LegacyNameSpace.LegacyClass.LegacyMethod("and so on...");
有没有办法可以通过正则表达式找到并替换它们?为了保留字符串参数得到下面的例子...
NewMethod(LegacyProject.LegacyNameSpace.LegacyClass.LegacyMethod("blah"));
NewMethod(LegacyProject.LegacyNameSpace.LegacyClass.LegacyMethod("foo"));
NewMethod(LegacyProject.LegacyNameSpace.LegacyClass.LegacyMethod("and so on"));
我无法更改原始方法,因为不幸的是它被抽象掉了并且总是位于视图 (.cshtml) 文件中。
编辑:对于认为这需要更多关注的小丑...将示例字符串 1 转换为示例字符串 2 的正则表达式是我所追求的。我对这里的学究感到绝望...
谢谢
如果您首先且仅使用以下正则表达式,则可以使用捕获组
$1 或 \1 取决于正则表达式的风格。
^LegacyProject.LegacyNameSpace.LegacyClass.LegacyMethod\("(.*)"\);$
我们将编写伪代码
link = replace(
'^LegacyProject.LegacyNameSpace.LegacyClass.LegacyMethod\("(.*)"\);$',
'NewMethod(LegacyProject.LegacyNameSpace.LegacyClass.LegacyMethod(""));',
link
)
根据您使用的正则表达式的风格进行修改。
鉴于我有 1000 的...
LegacyProject.LegacyNameSpace.LegacyClass.LegacyMethod("blah");
...
LegacyProject.LegacyNameSpace.LegacyClass.LegacyMethod("foo");
...
LegacyProject.LegacyNameSpace.LegacyClass.LegacyMethod("and so on...");
有没有办法可以通过正则表达式找到并替换它们?为了保留字符串参数得到下面的例子...
NewMethod(LegacyProject.LegacyNameSpace.LegacyClass.LegacyMethod("blah"));
NewMethod(LegacyProject.LegacyNameSpace.LegacyClass.LegacyMethod("foo"));
NewMethod(LegacyProject.LegacyNameSpace.LegacyClass.LegacyMethod("and so on"));
我无法更改原始方法,因为不幸的是它被抽象掉了并且总是位于视图 (.cshtml) 文件中。
编辑:对于认为这需要更多关注的小丑...将示例字符串 1 转换为示例字符串 2 的正则表达式是我所追求的。我对这里的学究感到绝望...
谢谢
如果您首先且仅使用以下正则表达式,则可以使用捕获组 $1 或 \1 取决于正则表达式的风格。
^LegacyProject.LegacyNameSpace.LegacyClass.LegacyMethod\("(.*)"\);$
我们将编写伪代码
link = replace(
'^LegacyProject.LegacyNameSpace.LegacyClass.LegacyMethod\("(.*)"\);$',
'NewMethod(LegacyProject.LegacyNameSpace.LegacyClass.LegacyMethod(""));',
link
)
根据您使用的正则表达式的风格进行修改。