On Sat, 30 Aug 2008 14:35:58 +0900
Bunta <hi9t-ooy@...-net.or.jp> さんwrote:
> ------- test2.sed -------
> $!N
> /^[^\n][^\n]*\n---$/{
> s/\n/\
> \
> /
> P
> s/^[^\n][^\n]*\n// #(*)
> }
> P
> D
> -------------------------
>
> で、onigsedだけ動かない。デバッガにより(*)の箇所でおかしくなっているこ
> とが判明した。#2437で書いたとおり
>
> # s/aaa\n// # こうなら誤って2つ消しはしない
> # s/[^\n]*\n// # これだと2つ消す
> s/[^\n]\+\n// # これでも2つ消す
>
> と少し詰められた、というわけです。これで十分ではないとも思いますが。
なるほど、ようやく理解しました。パターンによって改行の並びへのマッチの
仕方が変化しているということになりますね。
藤岡 和夫
kazuf@...
日曜プログラマのひとりごと http://homepage1.nifty.com/kazuf/renewal.html