2017-11-15 13 views
-2

私は正規表現を持っていますが、Chrome/Firefoxでは正常に動作しますが、Edgeではnullになります。Regexp execはEdgeで動作しません

var regexp = new RegExp("<header.*(?=)(.|\n)*?</header>", "g"); 
 
var str = "<body><header><h2>Title</h2></header><footer>footer</footer></body>"; 
 

 
var result = regexp.exec(str); 
 
console.log(result[0]);

JSFiddleデモ: https://jsfiddle.net/JSDavi/k391qs72/2/

異なるブラウザでそれを開いてください。それはエッジで変です。

答えて

1

この正規表現はすべてのブラウザで動作します。

var regexp = new RegExp("<header[^\>]*\>((.|\n)*?)\</header\>", "g"); 
 
var str = "<body><header><h2>Title</h2></header><footer>footer</footer></body>"; 
 

 
var result = regexp.exec(str); 
 
console.log(result[1]);

関連する問題