変更したいコードを含む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
。
modifiers を使用せずに使用できますが、[a-z0-9_]
一致するので望ましくない場合があります。A-Z
i
Function_SHOW();