作者: 藤岡和夫
日時: 2008/8/30(20:22)
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