SED 用于替换脚本文件中的特殊模式

SED 用于替换脚本文件中的特殊模式

我有 PHP 脚本,其中包含我想要更改的代码:

Function1_show();Function2_show();

我希望将文件更改为:

call_my_func("Function1");
call_my_func("Function2");

我不经常使用正则表达式,所以我不确定如何键入“_show();”在每个函数的末尾。 SED 似乎是最好的功能,但我们将不胜感激。

答案1

sed -i 's/\([A-Za-z0-9_]*\)_show();/call_my_func("\1");/g' *.php

-i出售sed就地更新 *.php 文件的选项。

这会搜索字母数字文本(包括下划线),然后_show();捕获该文本。

整个字符串将替换为call_my_func("、捕获的文本和");

如果匹配文本由于修饰符而多次出现,则会重复此操作g

可以通过使用修饰符来使用[a-z0-9_]without ,但它也会匹配,这可能不是所期望的。A-ZiFunction_SHOW();

相关内容