2015年2月5日木曜日

javascriptのreplaceの正規表現:複数行の先頭からマッチする部分までを消す方法(2)終了

ぶはあ。 解決。 っていうかドット改行マッチしないのか。
. 
(小数点) 改行文字以外のどの 1 文字にもマッチします。

例えば /.n/ は "nay, an apple is on the tree" の 'an' や 'on' にはマッチしますが、'nay' にはマッチしません。
まずは、改行をあらかじめリプレースするか、 []の中でドットとか\sとか使えたんだっけ? (.|\s)* とかするとマッチパターンが作成されるのか激しく遅いためこれは却下だろう。 (?:.|\s)*でも同じように文法上エラーはないけどどうしようもないスピードだ。 改行をリプレースするか、 あまり長いバッファを取り込まないように、multiline オプションを指定して、1行ずつ削除していく方がいいかもしれないなあ。

0 件のコメント:

コメントを投稿