preg_replace查找电话号码并删除空格

时间:2017-03-02 17:26:54

标签: php regex preg-replace

我有这个功能来查找电话号码并用可点击的链接替换它们,我想从电话号码中删除空格,因为当它与RTL(从右到左)文本混合时,数字顺序会中断:

$content_data = preg_replace('!(\b\+?[0-9()\[\]./ -]{7,17}\b|\b\+?[0-9()\[\]./ -]{7,17}\s+(extension|x|#|-|code|ext)\s+[0-9]{1,6})!i', '<a class="external text-ltr" href="tel:$1">$1</a>', $content_data);

如何修改代码以从电话号码中删除空格' '

感谢。

1 个答案:

答案 0 :(得分:1)

怎么样:

编辑:

$content_data = preg_replace_callback(
  '!(\b\+?[0-9()\[\]./ -]{7,17}\b|\b\+?[0-9()\[\]./ -]{7,17}\s+(extension|x|#|-|code|ext)\s+[0-9]{1,6})!i',
  function ($matches){
    $tel=str_replace(" ", "", $matches[0]);
    return '<a class="external text-ltr" href="tel:'.$tel.'">'.$tel.'</a>';
  },
  $content_data
);