L'espressione funziona alla perfezione, Grazie!
Ho anche un problemuccio con la mia espressione...
Ipotizzando che ho un campo così formato:
-2(50|17/10/2005+17:18|)--1(70|17/10/2005+17:17|)-
ed una query così composta:
codice:
$id=2;
$query = mysql_query("SELECT id,nome,campo FROM $db_table where campo LIKE '%-$id(%)-%'");
while($voce = mysql_fetch_array($query)) {
$nome=$voce['nome'];
$testo=$voce['campo'];
if(preg_match_all('#'.$id.'\((.+?)\)#si', $testo, $results)) {
echo $nome." - ".substr(implode("xxxxxxxxxxxxx", $results[1]), 0, -18)."
";
}
}
il risultato è:
nome2 - 50
Ma nel caso il campo fosse:
-2(50|17/10/2005+17:18|)--2(50|17/10/2005+17:17|)-
Mi si impalla la preg e non mi risponde per come dovrebbe cioè:
nome2 - 50
nome2 - 70
Perchè?
Mi date una mano?
Grazie ancora.