2009-12-17 5 views

Répondre

1

Voici regex qui correspondra littéralement à n'importe quel caractère qui n'est pas a-z. Le drapeau /g indique un match global qui couvrira tous les instances du match.

/[^a-z]+/g 

Si vous avez besoin des lettres majuscules aussi, vous pouvez soit passer le drapeau /i qui indique la casse:

/[^a-z]+/gi 

ou inclure les caractères majuscules en classe de caractères:

/[^a-zA-Z]+/g 
+0

Cela ne correspondra à aucun caractère. – Gumbo

+0

@Gumbo: Bon point. Je l'ai corrigé en changeant '*' en '+'. – Asaph

+1

merci beaucoup! cela a fonctionné parfaitement lorsqu'il est utilisé en javascript –

1

La classe caractère [^a-zA-Z] correspondra à tout caractère non (majuscules ou minuscules) a-z.

Je suis sûr que vous pouvez comprendre le reste.

+0

merci!celui-ci fonctionne pour le preg_replace en PHP, et la version Asaphs a fonctionné pour le duplicata que j'utilisais dans Jquery. –

1

\ W correspond à tout caractère non alphanumérique (az, 0-9 et underscore).

0

Voici une expression régulière correspond à une autre lettre que [a-z]:

/[^a-z]+/ 
0

OK.

  1. /[^ a-z] +/correspond à tout autre caractère que les lettres minuscules.
  2. /[^ A-Za-z] +/correspondra à tout ce qui n'est pas alpha.
  3. /\ W +/sur la plupart des systèmes correspondent à des caractères non-'word '. Les caractères Word incluent A-Z, a-z, 0-9 et '_' (trait de soulignement). Notez que c'est un W. majuscule
2

Avec un moteur regex peu sophistiqué (grep fera très bien) ce sera assez général:

/[^[:lower:]]+/ 

(Notez le ^!)

La différence entre [:lower:] et [a-z] est que le premier devrait être I18N amical et correspondre par exemple ü, â etc.

Pour la correspondance insensible à la casse, utiliser [:alpha:], pour inclure également les chiffres, utiliser [:alnum:]. [:alnum:] diffère de \W en ce qu'il n'inclut pas _ (trait de soulignement).

Notez que les classes de caractères écrites dans ce style peuvent être combinées comme d'habitude (comme a-z etc.), par ex. [^[:lower:][:digit:]]+ correspond à une chaîne de caractères non vide, sans les lettres minuscules ou les chiffres.

0

Si vous avez déjà besoin de créer une autre expression régulière try reading this. Enseigner à pêcher et tout ça. :)

Questions connexes