Au risque de recevoir quelques downvotes pour avoir dit la vérité, je vais être franchement honnête (comme une réponse devrait l'être, après tout) : en dehors de la possibilité de renvoyer l'information sur le site web de l'Union européenne, il n'y a pas d'autre solution que d'utiliser le site web de l'Union européenne. plusieurs captures pour un seul appel de match (possible dans les expressions régulières, mais d'une manière beaucoup plus alambiquée) et l'option %bxy
qui correspond à un équilibré de délimiteurs (par exemple, toutes sortes de parenthèses et autres) et peut être qualifié d'utile, de puissant et de "meilleur", presque tout ce que les motifs Lua peuvent faire, les expressions régulières peuvent le faire aussi .
Les lacunes des motifs Lua par rapport aux expressions régulières en ce qui concerne les "caractéristiques" sont en revanche significatives et trop nombreuses pour être mentionnées (par exemple, l'absence de OU, l'absence de groupes non capturables, les expressions de contournement, etc). Cela serait équilibré si, disons, les motifs Lua étaient significativement plus rapides que les expressions régulières habituellement plus lentes, mais je ne sais pas si - et où - une telle comparaison existe, une comparaison qui exclurait la vitesse native générale de Lua en raison de sa nature légère, de l'utilisation de tableaux, etc.
La vraie raison pour laquelle Lua n'a pas pris la peine d'ajouter les expressions régulières à sa boîte à outils ne peut pas être la longueur du code nécessaire (c'est absurde, les ordinateurs modernes ne bronchent même pas lorsqu'il s'agit de 4000 lignes de code contre "seulement" 500, même si cela se traduit un peu différemment dans une bibliothèque), mais est probablement due au fait qu'étant un langage de script, il a été supposé que le langage "parent" incluait déjà la capacité d'utiliser les expressions régulières. Il est évident que Lua, en tant que langage, a été conçu dans un souci de simplicité, de rapidité et avec seulement les fonctionnalités nécessaires à l'esprit. Cela fonctionne bien dans la plupart des cas, mais si vous avez besoin de plus de capacités dans ce domaine et que vous ne pouvez pas les reproduire en utilisant les autres fonctionnalités de Lua, les expressions régulières sont plus complètes.
L'avantage est que les différences de syntaxe entre les motifs Lua et les expressions régulières sont pour la plupart mineures, de sorte que si vous connaissez l'un, vous pouvez relativement facilement vous adapter à l'autre.
0 votes
Un lien vers l'endroit où vous avez lu cela dans la documentation serait bienvenu
0 votes
@g33kz0r les documents sont disponibles à l'adresse suivante : lua.org/pil/20.1.html la citation est tirée du deuxième paragraphe (celui qui commence par : "Contrairement à plusieurs autres langages de script, ...) la dernière phrase.