Questo dipende molto da come i tuoi dati sono formattati all'interno di $r_val
, ma un buon punto di partenza sarebbe provare:
$r_val = preg_replace('/(?<!\.)\b0\b(?!\.)/', '-', $r_val);
Dove \b
è un carattere di lunghezza 0 che rappresenta l'inizio o la fine di una 'parola'.
Per quanto strano possa sembrare, ma la documentazione Perl regex
in realtà è davvero utile per spiegare la parte regolare di preg_*
funzioni, dal momento che Perl è dove la funzionalità è effettivamente implementata.