Ich habe einen regulären Ausdruck geschrieben, um Zeichenfolgen aus HTML abzurufen, aber es scheint, dass das mehrzeilige Flag nicht funktioniert.
Dies ist mein Muster und ich möchte den Text in h1Tag bekommen.
var pattern= /<div class="box-content-5">.*<h1>([^<]+?)<\/h1>/mi
m = html.search(pattern);
return m[1];
Ich habe einen String erstellt, um ihn zu testen. Wenn die Zeichenfolge "\ n" enthält, ist das Ergebnis immer null. Wenn ich alle "\ n" entfernt habe, habe ich das richtige Ergebnis erzielt, egal mit oder ohne /mFlagge.
Was ist los mit meiner Regex?
dotAllModifikator haben wird, damit Sie dies tun können, /.../sund Ihre Punkte auch mit neuen Zeilen übereinstimmen. Ab Juli 2017 steht es hinter einer Flagge in Chrome.