-2

I have a regexp, it works fine in Chrome/Firefox, but get null in 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 demo: https://jsfiddle.net/JSDavi/k391qs72/2/

Please open it in different browsers. It's weird in Edge.

TylerH
  • 20,799
  • 66
  • 75
  • 101
Kate
  • 1,107
  • 8
  • 7

1 Answers1

1

This regex works in all browsers.

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]);
Alex Kudryashev
  • 9,120
  • 3
  • 27
  • 36