Pat*_*ick 0 php regex phone-number
我正试着写一个正则表达式,从一个完整的电话号码字符串中提取电话分机.这应该适用于这样的数字:777.777.7777 x 7302
它也应该使用"ext","EXT","Ext","eXt","ext."和"Ext".基本上只是涵盖了它的所有常见用途.
我只需要"x 7302"部分.事实上,一旦我提取它,我只是将它剥离到扩展号码.
有人可以帮我吗?当正则表达式变得更复杂时,我会挣扎.
我在PHP函数(preg_match)中这样做,如果这将有助于任何人.
这可能有助于你玩一些东西:
$phonenumber = '777.777.7777 x 7302';
$extension = preg_replace('(^.*(ext|x) ?([0-9]+)$)i', '$2', $phonenumber);
echo $extension;
Run Code Online (Sandbox Code Playgroud)
使用i修饰符(在结尾处)使正则表达式不区分大小写,以匹配所有组合ext.我用一组来提供两种变体:ext或x:(ext|x).
其余的是在最后寻找一个数字,EXT和数字之间可以有空格.