用 SED 替换所有出现的 PHP 函数名称
Replace all occurrences of PHP function name with SED
我有一个 PHP 文件,其中多次调用函数 my_function()
,我想用 blah_blah()
替换它,只需在各处重命名函数名称即可。我也有 another_my_function()
那里我不想被替换。
这里我创建了正则表达式:
[^\w\*]my_function\(
这意味着前缀应该是一些特殊字符,而不是带有起始圆括号的函数名。我将它替换到一个文件夹中,所以我们开始吧:
find my_folder_name -type f -exec sed -i 's/[^\w\*]my_function(/blah_blah(/g' {} \;
圆括号不是sed的特殊字符,所以我们不需要转义它。
问题是,我相信您已经注意到,它将替换包括前缀符号 [^\w\*]
的函数名称。
如何只替换函数名?
这是正确的解决方案,感谢 Marc B!
find my_folder_name -type f -exec sed -i 's/\bmy_function(/blah_blah(/g' {} \;
我有一个 PHP 文件,其中多次调用函数 my_function()
,我想用 blah_blah()
替换它,只需在各处重命名函数名称即可。我也有 another_my_function()
那里我不想被替换。
这里我创建了正则表达式:
[^\w\*]my_function\(
这意味着前缀应该是一些特殊字符,而不是带有起始圆括号的函数名。我将它替换到一个文件夹中,所以我们开始吧:
find my_folder_name -type f -exec sed -i 's/[^\w\*]my_function(/blah_blah(/g' {} \;
圆括号不是sed的特殊字符,所以我们不需要转义它。
问题是,我相信您已经注意到,它将替换包括前缀符号 [^\w\*]
的函数名称。
如何只替换函数名?
这是正确的解决方案,感谢 Marc B!
find my_folder_name -type f -exec sed -i 's/\bmy_function(/blah_blah(/g' {} \;