首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取手机号码

获取手机号码
EN

Stack Overflow用户
提问于 2012-02-21 06:53:18
回答 5查看 163关注 0票数 0

手机号码长度为11个字符,号码始终以07开头。

我想从字符串中捕获手机号码..下面是几个例子:

代码语言:javascript
复制
$String1 = "Text Text Text 07751 123 456 Text Text";
$String2 = "Text Text Text 07751 123456 Text Text"
$String3 = "Text Text Text 07751 123456. Text Text"
$String4 = "Text Text Text 07751123456, Text Text"

在PHP中怎么做呢?

EN

回答 5

Stack Overflow用户

发布于 2012-02-21 06:56:35

您可以使用以下命令删除所有非数字字符:

代码语言:javascript
复制
function remove_non_numeric($string) {
   return preg_replace('/\D/', '', $string)
}

通过该检查,它以07开始,依此类推。

票数 2
EN

Stack Overflow用户

发布于 2012-02-21 06:57:24

试试这个:

代码语言:javascript
复制
$numbers = array();
preg_match_all('/[0-9\\- ]{6,}/', $string, $numbers);
print_r($numbers);

它应该匹配由5个或更多0-9、短划线和空格字符组成的所有数字(您可以调整此数字)。

票数 0
EN

Stack Overflow用户

发布于 2012-02-21 07:07:05

代码语言:javascript
复制
/\b(?<myNumber>07[\d\s]+?)(?=[^\d\s])/

编辑:如果你可以说‘数字中可能有空格,但最多2个’,你可以添加范围(占尾随空格),伪验证长度:

代码语言:javascript
复制
/\b(?<myNumber>07[\d\s]{9,12})(?=[^\d\s])/ 

“单词边界,后面跟着一系列空格/数字,从07 (myNumber)开始,总共最多有14个字符(11+3空格),但在最后看一看非数字,非空格(数据中的字母或点),这样我们就知道我们得到了完整的数字”。(然后从结果中删除空格)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9369666

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档