3 votes

PHP PREG Regex : Que signifie " \W "signifie-t-il lors de l'utilisation du modificateur UTF-8 ?

Je sais qu'en temps normal php regex (mode ASCII) " \w " (mot) signifie "lettre, chiffre et _". Mais qu'est-ce que cela signifie lorsque vous utilisez une regex multi-octets avec le modificateur "u" ?

preg_replace('/\W/u', '', $string);

6voto

Welbog Points 32952

Tout ce qui n'est pas une lettre, un chiffre ou un trait de soulignement.

Donc, en termes de classes de caractères Unicode, \W est équivalent à tous les caractères qui ne sont pas dans les classes de caractères L ou N et qui ne sont pas le caractère de soulignement.

Si vous deviez l'écrire en utilisant l'option \p{xx} il serait équivalent à [^\p{LN}_] .

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X