Pseudo Mot de passe
fleche Inscription
fleche Mot de passe oublié ?
Informations Générales
Chargement en cours...
Nombre de Visites fleche [ 1 036 255 ]
Votre IP fleche [ 38.107.191.119 ]
Vous êtes ici : Home Page Cours PHP PREG REPLACE
Imprimer le document Version Imprimable

Informations Générales

[425] Posts sur le forum
[453] Membres inscrits
Il y a en ligne :
arrow 0 Membre
arrow 3 Invités
fled Membre en ligne:
Aucun

Partenariat

Partenariat Vous pouvez aider ce site à évoluer, en contribuant à son développement. Proposez vos idées de cours et/ou dossiers.
Rendez-vous dans « Partenariat » pour en savoir plus.


Publicité


Prestataire

N°1 de l'hébergement, location de serveurs, nom de domaines et téléphonie.
(OVH est recommandé par Webelix.net)

www.

Nos Partenaires

Expression rationnelle PREG_REPLACE()

Remplacement par expression rationnelle

preg_replace (mixed pattern, mixed replacement, mixed subject [, int limit [, int &count ]])

preg_replace() effectue une recherche par expression rationnelle dans la chaîne subject en recherchant les occurrences de pattern (voir Les méta-caractères), puis les remplace par la chaîne replacement.
La chaîne modifiée est retournée. (Ce qui signifie que la chaîne originale sera retournée si aucune occurrence n'est trouvée).

Exemples avec preg_replace()

Dans cet exemple, toutes patterns identiques entre "/" et "/" seras remplacé par la chaîne replacement "était".

<?php
  $subject = "Ceci est un test.";
  echo preg_replace( "/est/", "était", $subject );
?>

Ce qui affichera :

Ceci était un tétait.

Notez bien que si vous utilisez une valeur de type entier dans le paramètre de remplacement replacement, vous risquez de ne pas obtenir le résultat escompté.

Tout cela parceque ereg_replace() va interpréter le nombre comme la valeur ordinale d'un caractère, et l'utiliser.
Par exemple :

<?php
// Cet exemple ne fonctionne pas comme voulu.
$num = 4;
$string = "Cette chaîne a quatre mots.";
$string = ereg_replace('quatre', $num, $string);
echo $string; // Affichage : 'Cette chaîne a  mots.'

// Ceci est bon.
$num = '4';
$string = "Cette chaîne a quatre mots.";
$string = ereg_replace('quatre', $num, $string);
echo $string; // Affichage : 'Cette chaîne a 4 mots.'
?>

Autre exemple, toutes patterns identiques entre "/" et "/" seras remplacé par la chaîne replacement "cela".

<?php
  $subject = "Ceci est un test.";
  echo preg_replace( "/ceci/i", "cela", $subject );
  // Le "i" après le délimiteur du pattern indique que la recherche
  // ne sera pas sensible à la casse
?>

Ce qui affichera :

cela est un test.


Autre exemple, toutes chaînes entre "(" et ")" seront remplacé par des "(une chaîne)".

<?php
  $subject = "Ceci est (un test).";
  echo preg_replace( "/(\(\/?)(\w+)([^\)]*\))/", "(une chaîne)", $subject );
?>

Ce qui affichera :

Ceci est (une chaîne).

Haut de page