私はegrep
この-o
オプションを使用して行の一致する部分を取得します。
cat /usr/share/dict/words | egrep -o '(aa|ii)'
今、ゲームのいくつかの文脈、つまり左と右の一部のキャラクターを見たいと思います。これを達成する1つの方法は次のとおりです。
cat /usr/share/dict/words | egrep -o '.{3}(aa|ii).{2}'
より良い(より効率的でエレガントな)方法がありますか? (コマンドラインオプションを見てみましたが、egrep
この目的に使用されるオプションは見つかりませんでした。)
ベストアンサー1
次のことができます。
$ echo 'aabiicaa' | perl -lne '
while (/aa|ii/g) {print substr($`,-3)."[$&]".substr($'\'',0,2)}'
[aa]bi
aab[ii]ca
iic[aa]