sedの正規表現 http://itpro.nikkeibp.co.jp/article/COLUMN/20060228/231161/ より引用:
メタ文字 | 意味 |
---|---|
. | 改行文字以外の任意の1文字 |
* | 直前の1文字の0回以上の繰り返しに一致。直前の文字は正規表現でも構わない |
^ | 行の先頭 |
$ | 行の末尾 |
[ ] | かっこ内の任意の1文字に一致。ハイフン(-)で範囲指定もできる |
[^ ] | かっこ内の任意の1文字に不一致。ハイフン(-)で範囲指定もできる |
いたって素直でまっとうな正規表現でいいんじゃないのかな、と思いますよね。
ところが、
メタ文字 | 意味 |
---|---|
\+ | 直前の文字の1個以上の繰り返しに一致 |
\? | 直前の文字の0または1文字に一致 |
\| | いずれかのパターンに一致 |
Emacsだと \| とか使うけど、* が使えるのに \+ と \? はないでしょうよ。
改行の扱いもひどいけど、\+ と \? もどうなのよ、コレ。
だったらsedなんか使わなければいいじゃないかって? いやっ、お手軽だから好きなの。(好きか嫌いかドッチやねん?>自分)