par
Truc » 18 sept. 2007, 15:42
un exemple rapide (peut être pas parfait... trop peu d'infos) :
function replace($v)
{
$v[1] = str_replace("_","",$v[1]);
$v[1] = str_replace("-","",$v[1]);
return $v[1];
}
$s = "bla [team]nom_ep-[team].avi bla";
$s = preg_replace_callback('#\[\w+\](.+)\[\w+\]#','replace',$s);
echo "after : ".$s;
l'expression correspond à toute la partie à remplacer et la capture du mat à garder.
et le callback correspond juste à l'appel de la fonction de remlacement des caractères tels que "-" et "_" pour le mot capturé entre les [].
un exemple rapide (peut être pas parfait... trop peu d'infos) :
[php]function replace($v)
{
$v[1] = str_replace("_","",$v[1]);
$v[1] = str_replace("-","",$v[1]);
return $v[1];
}
$s = "bla [team]nom_ep-[team].avi bla";
$s = preg_replace_callback('#\[\w+\](.+)\[\w+\]#','replace',$s);
echo "after : ".$s; [/php]
l'expression correspond à toute la partie à remplacer et la capture du mat à garder.
et le callback correspond juste à l'appel de la fonction de remlacement des caractères tels que "-" et "_" pour le mot capturé entre les [].