Điều này phụ thuộc rất nhiều vào cách dữ liệu của bạn được định dạng bên trong $r_val
, nhưng một nơi tốt để bắt đầu là thử:
$r_val = preg_replace('/(?<!\.)\b0\b(?!\.)/', '-', $r_val);
Ở đâu \b
là một ký tự có độ dài bằng 0 đại diện cho phần bắt đầu hoặc kết thúc của một 'từ'.
Nghe có vẻ lạ, nhưng tài liệu Perl regex
thực sự rất tốt để giải thích phần regex của preg_*
các chức năng, vì Perl là nơi chức năng thực sự được triển khai.