16

Javascript の正規表現で改行を無視するには?

例えば:

 data = "\
    <test>11\n
    1</test>\n\
    #EXTM3U\n\
 "
 var reg = new RegExp( "\<" + "test" + "\>(.*?)\<\/" + "test" + "\>" )
 var match = data.match(reg)
 console.log(match[1])

結果: 未定義

4

5 に答える 5

12

\2 行目の末尾にJS 改行文字がありません。

また、正規表現を次のように変更します。

 var data = "\
    <test>11\n\
    1</test>\n\
    #EXTM3U\n\
 ";
 var reg = new RegExp(/<test>(.|\s)*<\/test>/);
 var match = data.match(reg);
 console.log(match[0]);

http://jsfiddle.net/samliew/DPc2E/

于 2013-05-27T10:12:59.267 に答える