GNUのsedコマンドです。
Contents
やり方
[^最短マッチの文字]
を使う。
[^最短マッチの文字]*最短マッチの文字
みたいな感じ。
例
2018-04-16 2018-04-17 2018-04-18
ていう文字があるtest.txtから赤字部分を消して、
04-16 2018-04-17 2018-04-18
を取り出したい場合、最短マッチの文字は、「-」になるから、以下を実行すればよい。
[bash]sed s/[^-]*-// test.txt[/bash]
ポイント
間違ったやり方
[^最短マッチの文字].*最短マッチの文字
「.」は不要。
正しいやり方
[^最短マッチの文字]*最短マッチの文字
参考にしたサイト
sedの最短一致
最近知ったけど、sedはstream editorの略らしい。 それはどうでもよくて、sedの正規表現のマッチングの小技的なものをメモとして書いておく。 HTMLをパースする場合を考える。 例えば、 id data 1 AKB48 2 perfume 3 bump.y … ...
コメント