如何用逗号替换点,但仅适用于字符串中的数字?(菲律宾比索)



我想将字符串中的所有点替换为逗号,但仅适用于数字(在PHP中(:

喜欢:

this is. an example. 15.68€

它应该转换为类似this is. an example. 15,68€

有没有简单的preg_replace或任何其他选择?

试试这个

  $str = "this is. an example. 15.68€";
  function cleaner($matches)
   {
     return str_replace("." , "," , $matches["nrs"]);
   }
 $str = preg_replace_callback ("/(?P<nrs>[0-9]+.[0-9]+)/" , "cleaner" , $str);
 echo $str;

我用过preg_replace_callback.这个函数的行为几乎与preg_replace()相同,除了应该指定一个回调而不是替换参数。在此处查看有关它的更多信息。 您还可以测试我的解决方案的实时预览。

最新更新