REG前的电话号码
问题描述:
如何更改以下任一只是数字REG前的电话号码
1-(999)-999-9999
1-999-999-9999
1-999-9999999
1(999)-999-9999
1(999)999-9999
我想最终的产品是19999999999
答
最简单的方法是将剥离的一切你的字符串的那不是一个号码,然后看看你结束了一个10位数字(或者11,如果你正在做的1强制):
$string = "1-(999)-999-9999";
$number = preg_replace('/[^0-9]/', "", $string); // results in 19999999999
if (strlen($number) == 11)
{
// Probably have a phone number
}
+0
国际的15位数字 – CaffGeek 2010-08-10 15:14:54
+0
是的,但是我将采用他提供的格式。 – 2010-08-10 15:16:04
答
尝试
preg_replace('\D', '', $string);
这将过滤掉任何非数字。
答
preg_replace('[\D*]', '', '1-(999)-999-9999');
[对电话号码验证的综合正则表达式(的
可能重复http://stackoverflow.com/questions/123559/a-全面的正则表达式为电话号码验证) – JYelton 2010-08-10 15:10:00