Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2033 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Expression régulière

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Expression régulière

n°589865
null
Posté le 13-12-2003 à 12:13:34  profilanswer
 

Slt,
 
Je travaille sur un projet et j'aurais besoin que mon script analyse une chaine et transforme les morceaux genre "{user}" par $user come pour les templates...je voudrais utiliser la fonction "preg_replace()" pour les \\1 mais je n'arrive pas  :sweat:  
 
Pouvez-vous m'eclarer sur la syntaxe ?
 
Merci

mood
Publicité
Posté le 13-12-2003 à 12:13:34  profilanswer
 

n°589918
karamilo
Posté le 13-12-2003 à 13:54:46  profilanswer
 

Code :
  1. $var = preg_replace("#\{([a-zA-Z0-9_-]+)\}#","$$1",$var);


 
edit:
attention tout de meme si tu n'utilise pas la concatenation, si tu as un truc du genre :
{var}2
ton script comprendra :  
$var2
et non pas $var.'2'


Message édité par karamilo le 13-12-2003 à 17:20:57
n°589920
null
Posté le 13-12-2003 à 14:22:13  profilanswer
 

Cool, merci bcp...une question quand meme, le # sert à quoi ?

n°589981
karamilo
Posté le 13-12-2003 à 17:02:40  profilanswer
 

a delimiter l'expression reguliere. Il faut 2 caracteres identiques au debut et a la fin : (nb: parfois, il n'y a pas d'options ...)
#regex#options
/regex/options  
etc
 
Si tu veux utiliser le caractere delimiteur, il faut l'echapper :
#regex_debut\#regex_fin#options
...

n°589988
null
Posté le 13-12-2003 à 17:07:41  profilanswer
 

Ha ok merci mais j'a testé et y a un ptit bug :p
 
dans mon fichier qui va etre pris & analysé il y a "var test : {test} " et le resultat donne "var test : test"...impossible de faire passer le deuxieme test comme variable...

n°590003
karamilo
Posté le 13-12-2003 à 17:21:08  profilanswer
 

oui j'avais oublié un $
edite plus haut


Message édité par karamilo le 13-12-2003 à 17:21:23
n°590008
null
Posté le 13-12-2003 à 17:25:27  profilanswer
 

bin oui c'est ce que j'avais essayé mais pas moyen :|
 
Regarde le code :  
 
<?php
/* ouverture du fichier */
$fp = @fopen("test.x", "r" );
while (!feof($fp))
{
   $Donnees .= fread($fp, 16);
}
 
$Data = $Donnees;
 
$test = "lol";
/* remplace des {} */
$Data = preg_replace("#\{([a-zA-Z0-9_-]+)\}#","$$1",$Data);
$Data = $Data;
echo "$Data";
?>


Message édité par null le 13-12-2003 à 17:28:17

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Expression régulière

 

Sujets relatifs
expression regulierePHP expression reguliere help
Expression Reguliere ... Où est le problème ?expression reguliere
Probleme d'expression reguliere[java] expression reguliere
je ne sait aps comment faire une certaine expression regulierebesoin d'un peu d'aide pour une expression régulière
[REGEXP][RESOLU] Expression régulière pour un nom NetBIOS d'ordinateurexpression régulière de manipulation de sources C
Plus de sujets relatifs à : Expression régulière


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR