ereg_replace到preg_replace(英文电话号码)

时间:2015-04-10 09:16:48

标签: php regex

正则表达式似乎是我的氪星石。

我如何转换:

ereg_replace('[^0-9]+','',str_replace("+", "00", $number))

为:

preg([something])

来自:http://james.cridland.net/code/format_uk_phonenumbers.html 我尝试将第一个参数更改为/[^0-9]+和`/ [^ 0-9] + /,以及这两个sans-quotes,但都没有效果。我担心我是一个正念新手。

2 个答案:

答案 0 :(得分:1)

您需要在delimiters的模式部分中包含php preg_replace()

preg_replace('~[^0-9]+~', '', str_replace("+", "00", $number));
            //^       ^

答案 1 :(得分:0)

试试这个:

preg_replace("/[^[:alpha:][:space:]]+/ui", '', str_replace("+", "00", $number));

来自this question

可在此处找到字符类:https://php.net/manual/en/regexp.reference.character-classes.php