Bonjour,
Je suis ultra-débutant en expressions régulières et j'aimerais faire quelque chose qui me semblait simplissime au premier abord: remplacer une chaîne quelconque qui se trouve entre deux autres chaînes bien définies.
En gros:
Le problème c'est que dans la chaîne quelconque, il y a des retours à la ligne. Et du coup rien n'est remplacé car le point représente tout sauf un retour à la ligne.
Là je me suis dit: "oh c'est rien, juste un petit \n à coller !".
Ben non :-/
Je n'ai absolument aucune idée de comment représenter ce curieux retour à la ligne qui n'est pas pris en compte par \n dans mon expression régulière.
D'après Google, il y a pas mal de monde qui a déjà rencontré ce problème. Mais je n'y ai trouvé aucune solution. Au moins je me sens moins seul :-)
Pour info la chaîne en question vient d'un simple fichier texte récupéré avec file().
Merci pour votre aide.
Je suis ultra-débutant en expressions régulières et j'aimerais faire quelque chose qui me semblait simplissime au premier abord: remplacer une chaîne quelconque qui se trouve entre deux autres chaînes bien définies.
En gros:
chaîneDebut.*chaîneFinLe problème c'est que dans la chaîne quelconque, il y a des retours à la ligne. Et du coup rien n'est remplacé car le point représente tout sauf un retour à la ligne.
Là je me suis dit: "oh c'est rien, juste un petit \n à coller !".
Ben non :-/
Je n'ai absolument aucune idée de comment représenter ce curieux retour à la ligne qui n'est pas pris en compte par \n dans mon expression régulière.
D'après Google, il y a pas mal de monde qui a déjà rencontré ce problème. Mais je n'y ai trouvé aucune solution. Au moins je me sens moins seul :-)
Pour info la chaîne en question vient d'un simple fichier texte récupéré avec file().
Merci pour votre aide.
> Lire le message (3 commentaires, moyenne: 3).
Vous avez demandé le commentaire #558322.



DOT_ALL
Salut,
Normalement, il faut utiliser DOT_ALL qui permet au caractère "." de matcher aussi "\n".
Donc ça doit être quelque chose du genre "/chaîneDebut.*chaîneFin)/s"
cf http://fr3.php.net/manual/en/reference.pcre.pattern.modifiers.php(...)