PHP查找包含所有可能组合的字符串中的电话号码

时间:2014-09-21 23:19:09

标签: php

当数字与 - 分开时,我得到了它。如何在数字如下时添加参数:

(xxx) xxx xxxx
xxx.xxx.xxxx
xxx-xxx-xxxx
(xxx)xxx-xxxx
xxxxxxxxxx
xxx xxx xxxx

php代码:

//find phone in string
preg_match('/\b\d{3}\s*-\s*\d{3}\s*-\s*\d{4}\b/', $phone, $phone_matches); 
$find_phone = $phone_matches[0];

编辑: 我找到了一种在文本中替换它的方法。所以我仍然在寻找所有要应用的格式

$hide_phone = preg_replace('/\b\d{3}\s*-\s*\d{3}\s*-\s*\d{4}\b/', '[hidden phone]', $phone);

2 个答案:

答案 0 :(得分:0)

尝试使用

preg_match('\(?[2-9][0-8][0-9]\)?[-. ]?[0-9]{3}[-. ]?[0-9]{4}',$phone, $phone_matches);

答案 1 :(得分:0)

不同的方法:

"/[(]*\d{3}[)]*\s*[.\-\s]*\d{3}[.\-\s]*\d{4}/"