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 25/05/2007, 17h16   #1
Invité régulier
 
Inscription : octobre 2006
Messages : 33
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 33
Points : 6
Points : 6
Par défaut Problème avec les backslashes

Salutations

J'ai un petit problème que je n'arrive pas a résoudre : Avec ma regexp ( #data\\animations\\(.+)# ) PHP me sort une erreur qui me semble insoluble :

Citation:
Warning: preg_match_all() [function.preg-match-all]: Delimiter must not be alphanumeric or backslash in C:\wamp\www\Parser\parseregexp.php on line 6
J'ai essayé de remplacer \\ par :

- \
- \\\
- \\\\
- [\\]
- (\\)

Rien n'y fait, l'erreur reste la même. Je ne comprends pas :/

Merci d'avance,

Shuny
Shuny est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/05/2007, 17h40   #2
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
Vous pourriez nous donner l'expression régulière au complet et ce que vous souhaitez matcher ?

Pour échapper facilement vous pouvez utiliser la fonction preg_quote (que ce soit pour écrire correctement le motif ou le créer dynamiquement).
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/05/2007, 17h57   #3
Invité régulier
 
Inscription : octobre 2006
Messages : 33
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 33
Points : 6
Points : 6
Salut et merci pour ta réponse. Le fichier a parser (en fait il fait 3655 lignes mais c'est toujours la même chose je ne mets donc que qques lignes) :

Code :
1
2
3
4
5
6
data\animations\strat_named_with_army__SG 01 idle 01.evt
data\animations\strat_named_with_army__SG 01 idle 02.evt
data\animations\strat_named_with_army__SG 01 idle 03.evt
data\animations\SG 01.evt
data\animations\strat_named_with_army__SG 83 UNIT SELECTED START.evt
data\animations\strat_named_with_army__SG 84 UNIT SELECTED LOOP.evt
Le code PHP :

Code PHP :
1
2
3
4
5
6
 
<?php
$fichier=file_get_contents('descr_skeleton.txt');
preg_match_all("#data\\animations\\(.+)#",$fichier,$resultat);
print_r($resultat); exit();
?>
Shuny est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/05/2007, 19h08   #4
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
Il suffit d'en mettre 3
Code :
preg_match_all('#data\\\animations\\\(.+)#',$fichier,$resultat);
Résultat (sur $resultat[1]) :
Citation:
Array
(
[0] => strat_named_with_army__SG 01 idle 01.evt
[1] => strat_named_with_army__SG 01 idle 02.evt
[2] => strat_named_with_army__SG 01 idle 03.evt
[3] => SG 01.evt
[4] => strat_named_with_army__SG 83 UNIT SELECTED START.evt
[5] => strat_named_with_army__SG 84 UNIT SELECTED LOOP.evt
)
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/05/2007, 23h01   #5
Invité régulier
 
Inscription : octobre 2006
Messages : 33
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 33
Points : 6
Points : 6
Merci
Shuny 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 03h57.


 
 
 
 
Partenaires

Hébergement Web