Rechercher : dans
Par :

Expression régulière Acces pb syntaxe

Dernière réponse le 15 jan 2009 à 18:45:34 Dédé86, le 22 jun 2008 à 18:16:58 
 Signaler ce message aux modérateurs

Bonjour,

Je cherche à vérifier si un nom rentré dans un formulaire est correct (c'est à dire qu'il ne contient pas de caractères qui n'ont pas leurs places comme les caractères spéciaux, les chiffres...).

Je rencontre un problème lors de la définition de la proprété pattern qui permet de créer l'expression régulière

Comment puis-je faire pour que vérifier que mon nom contient bien des caractères alpabétiques et exclure les chiffres ?

J'avais commencé avec cela mais je n'arrive pas à compléter :

reg.Pattern = "([a-z]{1,}[^0-9]{1,})"

Pouvez-vous m'aider ???

Merci d'avance

Meilleures réponses pour « Expression régulière Acces pb syntaxe » dans :
[RegExp] Récupérer une adresse IP VoirFinalité Mise en œuvre Explications Interprétation du motif Récupérer une adresse IP Finalité Pour récupérer une IP dans un fichier texte, fichiers journaux, pages web, etc. Mise en œuvre L'expression régulière suivante combinée à la...
Sed - Trucs et astuces VoirSubstitution Affichage Suppression Espace et tabulation Ligne vide Intervalle régulier Divers Joindre des lignes Affichage insensible à la casse Substitution Substituer "foo" par "bar" à chaque ligne Seulement la 1ère...
Sed - Supprimer une ou plusieurs lignes d'un fichier VoirSupprimer une (ou plusieurs) ligne(s) d'un fichier Syntaxe sed '{[/]||[/]}d' sed '{[/][,][/]d' /.../ = délimiteurs n = le numéro de ligne chaîne = la chaîne contenue dans la...
PHP - Expressions régulières VoirQu'est-ce qu'une expression régulière? Les expressions régulières sont des modèles créés à l'aide de caractères ASCII permettant de manipuler des chaînes de caractères, c'est-à-dire permettant de trouver les portions de la chaîne correspondant au...
Javascript - L'objet RegExp VoirLes particularités de l'objet RegExp L'objet RegExp est un objet permettant de manipuler des expressions régulières, c'est-à-dire des modèles créés à l'aide de caractères ASCII permettant de manipuler des chaînes de caractères, afin de trouver des...
Apache - Les fichiers .htaccess VoirLes fichiers .htaccess sont des fichiers de configuration d'Apache, permettant de définir des règles dans un répertoire et dans tous ses sous-répertoires (qui n'ont pas de tel fichier à l'intérieur). On peut les utiliser pour protéger un répertoire...

1

gigaga, le 22 jun 2008 à 18:19:29

[a-zA-Z]+

Répondre à gigaga

2

Dédé86, le 22 jun 2008 à 18:21:53

Ok merci et peux-tu m'expliquer ce que cela signifie ?

Je pense que cela veut dire : n'importe quelle caractère entre a et z minuscule et A et Z majuscule qui se répète de 1 a plusieurs fois c'est bien cela ?

(petite question : la syntaxe des expressions régulières est-elle commune à tous les langages ??)

merci

Répondre à Dédé86

3

gigaga, le 22 jun 2008 à 18:48:28

La sémantique décrite est exactement ça... ;)
Entre les langages la syntaxe des ER peut varier. Mais en gros c'est à peu pres pareil (y a quelques trucs en plus ou en moins ou parfois il faut proteger certains caractère avec un anti-slash par exemple).
Je t'ai donné l'expression régulière théorique (telle qu'elle devrait être dans tout les langages). Je glisse en passant que Perl est le meilleur langage pour les ER ;)

Répondre à gigaga

4

Dédé86, le 22 jun 2008 à 21:53:24

OK merci

Et comment puis-je faire pour faire en sorte d'exclure les caractères numériques dans la chaîne ? Parce que là j'ai :

[a-zA-Z]+[^0-9]+ mais ça n'exclue pas les caractères numérique dans la chaîne suivante : Nico45las

Pouvez-vous m'aider ?

Merci d'avance...

Répondre à Dédé86

5

 yop, le 15 jan 2009 à 18:45:34

Il suffit de matcher en boucle uniquement [a-zA-Z] car là exclure les nombres veut dire "s'il y a des nombres, alors ça ne match pas";
boucler sur ça donnera des resultats avec uniquement des lettres. tous les autres caractères seront exclus.
Hop en cadeau un bout de code pour faire tout ça en php :

while(eregi($pattern,$string,$regs)) {
// effacement des champs reconnus
$string = eregi_replace($regs[0],"",$string);
//ensuite faut utiliser les données récupérés :
$temp=$regs[1-2-3-etc]; //ici il faudra prévoir un petit quelque chose pour récupérer les bonnes valeurs et le tour sera joué
}

Répondre à yop