Je voudrais savoir s'il existe un moyen de sélectionner toutes les lignes d'une table où le contenu d'une colonne (varchar (255)) peut contenir des caractères autres que l'anglais standard (a-zA-Z) ou des caractères de différentes langues comme le grec, le français.Comment obtenir toutes les lignes contenant des caractères autres que [a-zA-Z] dans MySQL
Par exemple, si la table contient les données suivantes:
-- ID, Address --
| 1, "Test1" |
| 2, "Tåst2" |
| 3, "Test1" |
Je voudrais seulement obtenir la 2e rangée (2, « Tåst2 »)
j'ai essayé d'utiliser l'expression régulière procédant comme suit :
SELECT * FROM contact_info WHERE address NOT REGEXP '[a-zA-Z]';
Mais pas de chance!
Toute aide serait appréciée!
Je suppose que le problème était avec le début et l'expression régulière de fin! Si je dois aussi permettre à d'autres caractères spéciaux comme «, <> » dois-je les utiliser à l'intérieur du [ ].droite? – ppolyzos
Oui. Il y avait 2 problèmes: 1. les nombres n'étaient pas inclus dans l'ensemble, 2. sans les symboles étoile et fin et le quantificateur (*) votre match regex était positif s'il trouvait un caractère dans le texte. Je recommande de lire plus dans la documentation http://dev.mysql.com/doc/refman/5.1/fr/pattern-matching.html – Naktibalda