J'ai écrit une expression régulière pour récupérer la chaîne de code HTML, mais il semble que l'indicateur multiligne ne fonctionne pas.
Ceci est mon modèle et je veux obtenir le texte dans la h1
balise.
var pattern= /<div class="box-content-5">.*<h1>([^<]+?)<\/h1>/mi
m = html.search(pattern);
return m[1];
J'ai créé une chaîne pour le tester. Lorsque la chaîne contient "\ n", le résultat est toujours nul. Si j'ai supprimé tous les "\ n", cela m'a donné le bon résultat, peu importe avec ou sans le /m
drapeau.
Quel est le problème avec mon regex?
dotAll
modificateur pour que vous puissiez le faire /.../s
et vos points correspondront également à de nouvelles lignes. Depuis juillet 2017, il est derrière un drapeau dans Chrome.