Fonction pour remplacer des strings (php)
Fermé
yazou
Messages postés
85
Date d'inscription
mardi 7 novembre 2006
Statut
Membre
Dernière intervention
17 août 2023
-
11 févr. 2008 à 17:07
dada - 17 avril 2010 à 22:39
dada - 17 avril 2010 à 22:39
A voir également:
- Fonction pour remplacer des strings (php)
- Fonction si et - Guide
- Remplacer disque dur par ssd - Guide
- Remplacer word - Guide
- Easy php - Télécharger - Divers Web & Internet
- Fonction moyenne excel - Guide
5 réponses
styvodiabolo
Messages postés
44
Date d'inscription
jeudi 1 juin 2006
Statut
Membre
Dernière intervention
4 janvier 2009
11 févr. 2008 à 17:28
11 févr. 2008 à 17:28
Salut yazou,
Tu peux tâter du côté des expressions régulières mais pour le moment tu peux te tourner vers cette fonction :
//En début de script
$_ENV['caracInterdits'] = array(
".com",
".fr",
".org",
...,
"@",
"http"
);
//Je te laisse garnir à souhait les différents mots qui correspondraient à une url
function noSite(&$texte) {
foreach($_ENV['caracInterdits'] as $carac) {
if(eregi($carac,$texte)) $texte = str_replace($carac,"",$texte);
}
}
Tu peux tâter du côté des expressions régulières mais pour le moment tu peux te tourner vers cette fonction :
//En début de script
$_ENV['caracInterdits'] = array(
".com",
".fr",
".org",
...,
"@",
"http"
);
//Je te laisse garnir à souhait les différents mots qui correspondraient à une url
function noSite(&$texte) {
foreach($_ENV['caracInterdits'] as $carac) {
if(eregi($carac,$texte)) $texte = str_replace($carac,"",$texte);
}
}
yazou
Messages postés
85
Date d'inscription
mardi 7 novembre 2006
Statut
Membre
Dernière intervention
17 août 2023
2
11 févr. 2008 à 20:19
11 févr. 2008 à 20:19
Merci
Je crois que j ai trouve mon bonheur ici https://www.roscripts.com/php_regular_expressions_examples-136/
Bien a vous
Yazou
Je crois que j ai trouve mon bonheur ici https://www.roscripts.com/php_regular_expressions_examples-136/
Bien a vous
Yazou
yazou
Messages postés
85
Date d'inscription
mardi 7 novembre 2006
Statut
Membre
Dernière intervention
17 août 2023
2
11 févr. 2008 à 21:48
11 févr. 2008 à 21:48
je reviens ver vous pour tenter de resoudre une erreur, lorsque j utilise le code suivant :
function text_area($string)
{
$string=preg_replace('\b[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b', 'xxxx@xxxx.xx', $string);
$string=preg_replace('\b(https?|ftp|file)://[-A-Z0-9+&@#/%?=~_|!:,.;]*[-A-Z0-9+&@#/%=~_|]', 'xx', $string);
return $string;
}
j obtiens :
Warning</b>: preg_replace() [<a href='function.preg-replace'>function.preg-replace</a>]: Delimiter must not be alphanumeric or backslash in
une idee ?
Merci
Yaz
function text_area($string)
{
$string=preg_replace('\b[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b', 'xxxx@xxxx.xx', $string);
$string=preg_replace('\b(https?|ftp|file)://[-A-Z0-9+&@#/%?=~_|!:,.;]*[-A-Z0-9+&@#/%=~_|]', 'xx', $string);
return $string;
}
j obtiens :
Warning</b>: preg_replace() [<a href='function.preg-replace'>function.preg-replace</a>]: Delimiter must not be alphanumeric or backslash in
une idee ?
Merci
Yaz
styvodiabolo
Messages postés
44
Date d'inscription
jeudi 1 juin 2006
Statut
Membre
Dernière intervention
4 janvier 2009
11 févr. 2008 à 22:39
11 févr. 2008 à 22:39
Bien le bonsoir,
Je peux te répondre mais ma façon de "coder" les expressions régulières est un soupçon différente.
Tout d'abord "Delimiter must not be alphanumeric or backslash in " --> pas de /b au départ ni à la fin donc #.
Dans un premier temps, on aura donc :
$string=preg_replace("#[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}#", "xxxx@xxxx.xx", $string);
$string=preg_replace("#(https?|ftp|file)://[-A-Z0-9+&@#/%?=~_|!:,.;]*[-A-Z0-9+&@#/%=~_|]#", "xx", $string);
Par contre, les dièses à l'intérieur des crochets dans le deuxième preg_replace vont être embêtants.
Au final :
$string=preg_replace("#[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}#", "xxxx@xxxx.xx", $string);
$string=preg_replace("#(https?|ftp|file)://[-A-Z0-9+&@/%?=~_|!:,.;]*[-A-Z0-9+&@/%=~_|]#", "xx", $string);
Styvo.
Je peux te répondre mais ma façon de "coder" les expressions régulières est un soupçon différente.
Tout d'abord "Delimiter must not be alphanumeric or backslash in " --> pas de /b au départ ni à la fin donc #.
Dans un premier temps, on aura donc :
$string=preg_replace("#[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}#", "xxxx@xxxx.xx", $string);
$string=preg_replace("#(https?|ftp|file)://[-A-Z0-9+&@#/%?=~_|!:,.;]*[-A-Z0-9+&@#/%=~_|]#", "xx", $string);
Par contre, les dièses à l'intérieur des crochets dans le deuxième preg_replace vont être embêtants.
Au final :
$string=preg_replace("#[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}#", "xxxx@xxxx.xx", $string);
$string=preg_replace("#(https?|ftp|file)://[-A-Z0-9+&@/%?=~_|!:,.;]*[-A-Z0-9+&@/%=~_|]#", "xx", $string);
Styvo.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question