タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

正規表現とregexpに関するsadahのブックマーク (1)

  • 正規表現のeオプションをJavaScriptでエミュレート

    Perlなどの置換系の正規表現ではeというオプション(フラグ)をつけると、置換後の文字列をプログラム・コードとみなしてくれるわけですが、JavaScriptのreplace()の第一引数で指定する正規表現にはeオプションなどというモノはありません。しかし、replace()の第二引数である置換後の文字列にはStringオブジェクトや文字列リテラル以外にも関数を指定することもできるので、事実上eオプション相当のことが実現できます。エミュレートというのは正確ではない気がするけど気にしない。 具体的には、 var s = "asdf123asdf123456asdf123asdf"; document.write( s.replace( /123/g, function (num, idx, old) { return parseInt(num) + 333; } ) ); という感じ。上記例で

    正規表現のeオプションをJavaScriptでエミュレート
  • 1