Je dois faire correspondre toutes ces balises d'ouverture :
<p>
<a href="foo">
Mais pas celles-ci :
<br />
<hr class="foo" />
J'ai trouvé ça et je voulais m'assurer que j'avais raison. Je ne saisis que le a-z
.
<([a-z]+) *[^/]*?>
Je crois que c'est écrit :
/
, puisEst-ce que j'ai bien compris ? Et surtout, qu'en pensez-vous ?
Vous ne pouvez pas analyser le [X]HTML avec une expression rationnelle. Parce que le HTML ne peut pas être analysé par une expression rationnelle. La commande Regex n'est pas un outil qui peut être utilisé pour analyser correctement le HTML. Comme j'ai déjà répondu tant de fois ici aux questions sur le HTML et la regex, l'utilisation de la regex ne vous permettra pas de consommer du HTML. Les expressions régulières sont un outil qui n'est pas suffisamment sophistiqué pour comprendre les constructions employées par HTML. Le HTML n'est pas un langage régulier et ne peut donc pas être analysé par des expressions régulières. Les requêtes Regex ne sont pas équipées pour décomposer le HTML en ses parties significatives. tant de fois mais je n'y arrive pas. Même les expressions régulières irrégulières améliorées telles qu'utilisées par Perl ne sont pas à la hauteur de l'analyse du HTML. Vous ne me ferez jamais craquer. Le HTML est un langage suffisamment complexe pour ne pas être analysé par des expressions régulières. Même Jon Skeet ne peut pas analyser le HTML en utilisant des expressions régulières. Chaque fois que vous essayez d'analyser le HTML à l'aide d'expressions régulières, l'enfant impie pleure le sang des vierges et les hackers russes détruisent votre application web. L'analyse du langage HTML avec des expressions régulières appelle les âmes souillées dans le royaume des vivants. HTML et regex vont ensemble comme l'amour, le mariage et l'infanticide rituel. Le
͎a̧͈͖r̽̾̈́͒͑e
not rè̑ͧ̌aͨl̘̝̙̃ͤ͂̾̆ ZA̡͊͠͝LGΌ ISͮ̂҉̯͈͕̹̘̱ TO͇̹̺ͅƝ̴ȳ̳ TH̘Ë͖́̉ ͠P̯͍̭O̚N̐Y̡ H̸̡̪̯ͨ͊̽̅̾̎Ȩ̬̩̾͛ͪ̈́̀́͘ ̶̧̨̱̹̭̯ͧ̾ͬC̷̙̲̝͖ͭ̏ͥͮ͟Oͮ͏̮̪̝͍M̲̖͊̒ͪͩͬ̚̚͜Ȇ̴̟̟͙̞ͩ͌͝S̨̥̫͎̭ͯ̿̔̀ͅ
Avez-vous essayé d'utiliser un analyseur syntaxique XML à la place ?
Note du modérateur
Ce message est verrouillé pour éviter toute modification inappropriée de son contenu. Le message se présente exactement comme il est censé se présenter - il n'y a aucun problème avec son contenu. Veuillez ne pas le signaler à notre attention.
Vous voulez que le premier >
ne soit pas précédé d'un /
. Regardez [ici][1] pour savoir comment faire. C'est ce qu'on appelle le lookbehind négatif.
Cependant, une implémentation naïve de cette méthode aboutira à une correspondance avec <bar/></foo>
dans cet exemple de document.
<foo><bar/></foo>
Pouvez-vous fournir un peu plus d'informations sur le problème que vous essayez de résoudre ? Faites-vous une itération programmée des balises ?