← Ressources RESOURCE
Même pour une expression régulière identique, la syntaxe et la prise en charge diffèrent légèrement d'un langage à l'autre.

Les concepts clés des expressions régulières sont communs, mais la syntaxe détaillée (la « saveur ») diffère selon les langages. Cet outil utilise le moteur JavaScript (ECMAScript) du navigateur, il faut donc connaître les différences lorsqu'on transpose un motif vers un autre environnement.

Les groupes nommés sont pris en charge par JavaScript, Python et PCRE, mais avec une syntaxe différente. JavaScript et PCRE utilisent (?<name>...), Python utilise (?P<name>...), et les références diffèrent également. La rétrospection est prise en charge par les versions récentes de JavaScript, Python et PCRE, mais absente de certains anciens environnements.

La notation des drapeaux diffère aussi. JavaScript les place après une barre oblique, comme dans /pattern/gi, tandis que Python passe en argument une constante comme re.IGNORECASE. Les drapeaux s(dotAll) et u(unicode) de JavaScript peuvent correspondre à un comportement par défaut ou porter un autre nom dans d'autres langages.

Les propriétés Unicode \p{...} ne fonctionnent en JavaScript qu'avec le drapeau u, tandis que PCRE et Python (module regex) les traitent un peu différemment. Lorsque vous transposez un motif vers un autre langage, vérifiez d'abord ces points dans la documentation des expressions régulières de ce langage.