読者です 読者をやめる 読者になる 読者になる

hiro(iskwa)'s blog

プロジェクトマネジメントとかソフトウェアを中心としたシステム開発を中心として日々気づいたことを記録していくブログ、にしていくかも

sedで1文字以上を示す正規表現を使う

これは何か

sed正規表現の'+'(1文字以上)を使う.

何のためか

sed正規表現'+'を使おうとしたが使えずに困った.

$ echo 'ab' | sed -e 's/(ab+)//g'
ab
# aと1文字以上のbがあるのに置換されない

どうやるの

sed -e ではなく sed -E とする.

echo 'ab' | sed -E 's/(ab+)//g'

# 置換されて空文字が出力される

拡張正規表現を使うには-Eオプションを使う必要があるらしい.