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 06/02/2008, 12h19   #1
Membre éprouvé
 
Inscription : août 2006
Messages : 590
Détails du profil
Informations personnelles :
Âge : 34
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : août 2006
Messages : 590
Points : 401
Points : 401
Par défaut preg_replace : comment trouver \n

Bonjour,

Je deviens dingue : pas moyen de faire chercher \n avec preg_replace dans un texte... (je ne parle pas du retour à la ligne, mais bien des caractères séparés \ et n, ce serait pour les substituer par \\n (échappement en LaTeX). Quelqu'un aurait une suggestion ? Ce serait super...

Merci ,

Hugo
[Hugo] est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/02/2008, 12h23   #2
Membre Expert
 
Inscription : janvier 2005
Messages : 2 288
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 2 288
Points : 2 287
Points : 2 287
Pour rechercher un \ il me semble qu'il faut l'échapper vu que c'est un caractère réservé et donc chercher \\
donc pour chercher la suite de caractères \n il faut surement chercher \\n non?
koopajah est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/02/2008, 12h26   #3
Membre éprouvé
 
Inscription : août 2006
Messages : 590
Détails du profil
Informations personnelles :
Âge : 34
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : août 2006
Messages : 590
Points : 401
Points : 401
Ben c'est ce que je fais, et ça me paraît logique... mais cette damnée machine n'est pas de notre avis... comprends pas... Je vais faire qq tests, ça me calmera .
Merci de ta suggestion !!
[Hugo] est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/02/2008, 12h34   #4
Membre éprouvé
 
Inscription : août 2006
Messages : 590
Détails du profil
Informations personnelles :
Âge : 34
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : août 2006
Messages : 590
Points : 401
Points : 401
Après qq tests, ce code plante :

Code :
1
2
$ch = '<b>\n</b>';
echo preg_replace('#\\#','a',$ch);
Je pensais qu'il me chercherait le \, mais en fait cela génère "no ending delimiter" : donc \\ n'échappe pas \... comment on échappe \, alors ?
[Hugo] est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/02/2008, 12h45   #5
Membre éprouvé
 
Développeur Web
Inscription : avril 2005
Messages : 395
Détails du profil
Informations personnelles :
Âge : 28

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : avril 2005
Messages : 395
Points : 479
Points : 479
Code :
1
2
3
4
5
6
7
 
        $subject = 'je cherche un caractère de mer.... \n celui là oui vite chopez le !!';
	$pattern = '`\\\n`';
	$replacement = 'a';
	echo preg_replace($pattern, $replacement, $subject);
 
        // affiche :  je cherche un caractère de mer.... a celui là oui vite chopez le !!
Gats est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/02/2008, 12h47   #6
Membre éprouvé
 
Inscription : août 2006
Messages : 590
Détails du profil
Informations personnelles :
Âge : 34
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : août 2006
Messages : 590
Points : 401
Points : 401
Gats t'es un tueur !! merci beaucoup
Mais pourquoi qu'il en faut 3 ????
Hugo
[Hugo] est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/02/2008, 13h02   #7
Membre éprouvé
 
Développeur Web
Inscription : avril 2005
Messages : 395
Détails du profil
Informations personnelles :
Âge : 28

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : avril 2005
Messages : 395
Points : 479
Points : 479
Citation:
Envoyé par [Hugo] Voir le message
Gats t'es un tueur !! merci beaucoup
Mais pourquoi qu'il en faut 3 ????
Hugo
L'antislash '\' étant le caractère d'échappement il faut l'échapper lui-même.
Gats est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/02/2008, 13h24   #8
Membre éprouvé
 
Inscription : août 2006
Messages : 590
Détails du profil
Informations personnelles :
Âge : 34
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : août 2006
Messages : 590
Points : 401
Points : 401
yes, mais pourquoi est-ce que \\n ne marche pas pour \n ? \\ échappe le \ puis la lettre n... je me plante où ?
Encore merci
[Hugo] 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 18h45.


 
 
 
 
Partenaires

Hébergement Web