Précédent   Forum des professionnels en informatique > PHP > Langage > Regex
Regex Forum d'entraide sur les expressions rationnelles PHP. Avant de poster -> FAQ regex, Cours de regex et Sources de regex
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 11/03/2006, 02h36   #1
Invité régulier
 
Inscription : janvier 2006
Messages : 18
Détails du profil
Informations forums :
Inscription : janvier 2006
Messages : 18
Points : 7
Points : 7
Par défaut Simple expression régulière pour ereg_replace

Bonjour,

Une petite question car je ne suis pas très fort en expression régulière...

Je veux juste supprimer dans une chaîne tous les caractères qui sont autres que alphanumériques (A-Z, 0-9), autres que tiret (-), underscore (_) et point.

Je pense utiliser ereg_replace avec une expression régulière appropriée...

quelqu'un peut-il m'aider please :-) ?

Merci d'avance...
aurapp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/03/2006, 03h28   #2
Membre Expert
 
Avatar de ska_root
 
Homme
Développeur informatique
Inscription : août 2005
Messages : 1 179
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 42
Localisation : France

Informations professionnelles :
Activité : Développeur informatique
Secteur : Service public

Informations forums :
Inscription : août 2005
Messages : 1 179
Points : 1 580
Points : 1 580
Salut,

Code :
1
2
 
preg_replace('`([^A-Za-z0-9_\.]+)?`','',$chaine);

__________________
http://cdemarche.developpez.com/

Tu as la réponse à ta question ? N'oublies pas le petit en bas à gauche de ton message...
ska_root est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/03/2006, 07h06   #3
Membre actif
 
Inscription : janvier 2006
Messages : 149
Détails du profil
Informations personnelles :
Âge : 28
Localisation : France, Ille et Vilaine (Bretagne)

Informations forums :
Inscription : janvier 2006
Messages : 149
Points : 186
Points : 186
Citation:
Envoyé par ska_root
Salut,

Code :
1
2
 
preg_replace('`([^A-Za-z0-9_\.]+)?`','',$chaine);

Si je ne m'abuse il manque le tiret :

Code :
1
2
 
preg_replace('`([^-A-Za-z0-9_\.]+)?`','',$chaine);
Vell est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/03/2006, 18h49   #4
Invité régulier
 
Inscription : janvier 2006
Messages : 18
Détails du profil
Informations forums :
Inscription : janvier 2006
Messages : 18
Points : 7
Points : 7
Par défaut Résolu

Super, merci beaucoup :-)
aurapp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/03/2006, 20h24   #5
Rédacteur
 
Avatar de Yogui
 
Homme Guillaume Rossolini
Directeur technique
Inscription : février 2004
Messages : 13 720
Détails du profil
Informations personnelles :
Nom : Homme Guillaume Rossolini
Localisation : France

Informations professionnelles :
Activité : Directeur technique

Informations forums :
Inscription : février 2004
Messages : 13 720
Points : 17 355
Points : 17 355
Salut

Code :
preg_replace('/([^a-z0-9_.-]+)?/i', '', $chaine);
Je me permets de suggérer cette version car le tiret doit se situer à la fin de la classe. De plus, il est inutile d'échapper le point lorsqu'il est à l'intérieur d'une classe. Enfin, j'aime mieux utiliser "a-z" avec le modificateur "i" plutôt que "a-zA-Z" sans ce modificateur, mais ce n'est que mon avis.
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework)
Ressources PHP - Ressources Zend Framework
Yogui est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/03/2006, 08h48   #6
Membre actif
 
Inscription : janvier 2006
Messages : 149
Détails du profil
Informations personnelles :
Âge : 28
Localisation : France, Ille et Vilaine (Bretagne)

Informations forums :
Inscription : janvier 2006
Messages : 149
Points : 186
Points : 186
Le tiret doit se situer en début ou en fin
Vell est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/03/2006, 12h34   #7
Rédacteur
 
Avatar de Yogui
 
Homme Guillaume Rossolini
Directeur technique
Inscription : février 2004
Messages : 13 720
Détails du profil
Informations personnelles :
Nom : Homme Guillaume Rossolini
Localisation : France

Informations professionnelles :
Activité : Directeur technique

Informations forums :
Inscription : février 2004
Messages : 13 720
Points : 17 355
Points : 17 355
Citation:
Envoyé par Vell
Le tiret doit se situer en début ou en fin
Très bien, ma suggestion n'avait donc pas lieu d'être.
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework)
Ressources PHP - Ressources Zend Framework
Yogui est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h45.


 
 
 
 
Partenaires

Hébergement Web