Expression reguliere en PHP
electronLibre
-
webjfr Messages postés 24 Statut Membre -
webjfr Messages postés 24 Statut Membre -
Bonjour,
j'ai un block de texte duquel je voudrais remplacer toutes les occurrences de nombre composés de 5 chiffres.
Par exemple cette belle phrase de Churchill: :-)
Monsieur, si j'étais votre (52565) épouse, je (23) mettrai du poison (54127) dans votre café!
Madame, si j'étais votre époux, je le boirais!
Je voudrais donc remplacer tous les nombre qui ont 6 chiffres.
Remplacer 52565 par <b>52565</b> et 54127 par <b>54127</b>
Merci de votre aide
j'ai un block de texte duquel je voudrais remplacer toutes les occurrences de nombre composés de 5 chiffres.
Par exemple cette belle phrase de Churchill: :-)
Monsieur, si j'étais votre (52565) épouse, je (23) mettrai du poison (54127) dans votre café!
Madame, si j'étais votre époux, je le boirais!
Je voudrais donc remplacer tous les nombre qui ont 6 chiffres.
Remplacer 52565 par <b>52565</b> et 54127 par <b>54127</b>
Merci de votre aide
3 réponses
-
Salut,
heu, test ça :
preg_replace('`((0-9){6}+)`','<b>$1</b>',$string); -
merci, pour il marche pas ton truc :)
Entre temps j'ai fais ca:
$txt = "Monsieur, si j'étais votre (52565) épouse, je (23) mettrai du poison (54127) dans votre café!
Madame, si j'étais votre époux, je le boirais! ";
$pattern = "([0-9]{5})";
$getItem = eregi($pattern ,$txt, $regs);
$getItem = $regs[0];
echo eregi_replace($itemId ,'<b>'.$getItem .'</b> ', $txt);
Ceci marche très bien.
sauf que je voudrais qu'en même temps, les nombres avec seulement 2 chiffres, comme 23, soient remplacés par <i>23</i>
Et la je cale grave :) -
Re,
eregi() consomme plus que les preg().
Ensuite, il faut que tu fasses un 2ème eregi ou preg, mais il faudra ajouter l'espace avant, que tu dois signaler en dehors des chiffres comme ceci \[ESPACE] (remplace [ESPACE] par un espace !)