~/foo.txt
次の各文字列のインスタンスを含むファイルがあります。
alpha-1
alpha-2
alpha-3
alpha-4
alpha-5
alpha-6
alpha-7
alpha-8
alpha-9
alpha-X
これらのそれぞれをに変更したいと思います。他のインスタンスを維持したいので、beta-X
単にalpha-
に置き換えるだけではbeta-
不十分です。alpha-
私はこれが次のようになることができると思います。
perl -p -i -e `s/alpha-SOMETHING/beta-SOMETHING/g'
SOMETHING
しかし、それが何であるべきかはよくわかりません。ここに解決策はありますか?
(もちろん9行のコードを実行できますが、これは非効率的です。)
ベストアンサー1
perl -p -i -e 's/alpha-(\d)/beta-$1/g'
\d
0 ... 9と一致(\d)
一致する内容をキャプチャ(保存)して変数に割り当てます。$1
(他のキャプチャを追加すると、次の変数に割り当てられます$2
。)- 数字が2桁以上ある場合は、
\d+
それを使用して1つ以上の数字を一致させることができます。