Vous n'êtes pas identifié(e).
Pages :: 1
Bonjour à tous
Je suis entrain d'essayer d'utiliser les expressions régulières mais je bloque
// $en['SUBJECT'] = "<b>Sujet</b>";
$str = "\$en['SUBJECT'] = \"<b>Sujet</b>\";"; // Voici ma variable mi sous cette forme pour mon test.
Je veux extrait de cette forme là
// $en['$1'] = "$2";
J'ai essayé ca mais sans succès
$var = preg_split('/\$en[\'([A-Z])+\'] = /', $str, -1, PREG_SPLIT_OFFSET_CAPTURE);
print_r($var);
echo $var;
et ça pareil
preg_match_all("|\$en[^(.*)[^\'\]]+ = |",$str , $out, PREG_OFFSET_CAPTURE);
echo $out[0][0] . ", " . $out[0][1] . "\n";
Avez vous une idée ?
Merci
Hors ligne
Salut,
Promotion de PPOO : Programmation Propre Orientée Objet !!
Recommande AAO : Apéritif Avec Olives...
Glop, glop
Hors ligne
Wajou super !
J'étais entrain de partie sur plusieurs explode en même temps
ca marche à 100%
Hors ligne
Attention cependant,
Si : $en['SUBJECT'] = "<b>Sujet</b>"; matche, les lignes suivantes ne seront pas prises :
$en['SUBJECT']="<b>Sujet</b>";
$en['SUBJECT'] = '<b>Sujet</b>';
$en["SUBJECT"] = "<b>Sujet</b>";
A+
Promotion de PPOO : Programmation Propre Orientée Objet !!
Recommande AAO : Apéritif Avec Olives...
Glop, glop
Hors ligne
Je me suis imposé de faire un fichier propre donc il n'y aura pas d''espace.
Un grand merci
Hors ligne
Bonjour,
J’ai presque la même problématique que pablofr,
J’ai une chaîne avec le format suivant :
J’essaie depuis plusieurs jour de crée une fonction générique me permettant d’extraire ces les données:
function extra_data($debut, $data){
if (preg_match("[".$debut.":(.*)]", $data, result)){
return $result[1];
}
}
$id = extra_data ("ID", $data) ;
echo $id;
Cela ne fonctionne pas à 100%
Avez vous une idée ?
Merci
Dernière modification par asus75 (15-10-2009 14:23:35)
Hors ligne
Hello,
Essaye de rajouter des '\' à coté de tes crochets :
Comme les crochets sont des métas caractères preg_patch va identifier une classe de caractères plutôt que ta chaîne '$debut'
La programmation est composée de 80% de réflexion pour 20% de syntaxe -> réfléchissez à votre problème par étapes
Recommande l'utilisation du pattern Singleton
Si jamais je poste un morceau de code pour vous aider, prenez bien compte que je n'ai pas forcément testé le code que je poste et qu'il est possible qu'il contienne des erreurs
Hors ligne
si je mets
cela me met "Warning: preg_match() [function.preg-match]: Delimiter must not be alphanumeric or backslash"
si je met
cela m'affiche
sd54f6sd5][REF:sdfsdlmkfsd][TOTO:sdfsfjklsd]
Donc cela enlève le début mais pas la fin, ce que je ne comprend pas
Hors ligne
En fait je peux rajouter une $toto = explode("]", $result[1]) a la fin et appeler $toto[0]
Hors ligne
Salut,
Il te faut d'une part délimiter correctement le masque et ensuite le rendre non gourmand (option U).
Promotion de PPOO : Programmation Propre Orientée Objet !!
Recommande AAO : Apéritif Avec Olives...
Glop, glop
Hors ligne
Pages :: 1