Les regexp, c'est bien, sauf quand ça marche pas... Et en l'occurrence, il est préférable d'utiliser un vrai parser.
Extrait de perldoc :
How do I find matching/nesting anything?
This isn’t something that can be done in one regular expression, no matter how complicated. To find something between two single characters, a pattern like "/x([^x]*)x/" will get the intervening bits in 1ドル. For multiple ones, then something more like "/alpha(.*?)omega/" would be needed. But none of these deals with nested patterns. For balanced expressions using "(", "{", "[" or "<" as delimiters, use the CPAN module Regexp::Common, or see "(??{ code })" in perlre. For other cases, you’ll have to write a parser.
# Le plus simple est de...
Posté par jigso . En réponse au message Captures dans une regexp. Évalué à 4.
Les regexp, c'est bien, sauf quand ça marche pas... Et en l'occurrence, il est préférable d'utiliser un vrai parser.
Extrait de perldoc :