function findThePhoneNumbers($oldStr = ""){
// 检测字符串是否为空
$oldStr=trim("q{$oldStr}q");
$numbers = array();
if(empty($oldStr)){
return $numbers;
}
$strArr = explode("-", $oldStr);
$newStr = $strArr[0];
for ($i=1; $i < count($strArr); $i++) {
if (preg_match("/\d{2}$/", $newStr) && preg_match("/^\d{11}/", $strArr[$i])){
$newStr .= $strArr[$i];
} elseif (preg_match("/\d{3,4}$/", $newStr) && preg_match("/^\d{7,8}/", $strArr[$i])) {
$newStr .= $strArr[$i];
} else {
$newStr .= "-".$strArr[$i];
}
}
// 手机号的获取
$reg='/\D(?:86)?(\d{11})\D/is';//匹配数字的正则表达式
preg_match_all($reg,$newStr,$result);
$nums = array();
$common = '/^1[3-9]\d{9}$/';
foreach ($result[1] as $key => $value) {
if(preg_match($common,$value)){
$nums[] = $value;
}
}
// 返回最终数组
return $nums;
}
PHP 字符串找出手机号码
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- js 如何校验手机号码呢?手机号有如下规则:(1)必须全为数字;(2)必须是11位.(有人说还有10位的手机号,这...
- 今天有用户反应提示手机号码不合法,开始怀疑是有空格,但是之前已经做了去除空格的处理,一直不知道什么原因。后来让用户...