从 phone 号码中去除特殊字符和 +1
Strip special characters and +1 from phone number
我一直在尝试将 phone 个数字验证为 5555555555 格式。我已经成功地去除了所有特殊字符的 phone 数字,但是如果使用 +15555555555 输入 phone 数字,该数字的开头仍然包含“1”。有没有办法同时删除 +1 和特殊字符?
我当前的正则表达式是 preg_replace('/^1|\D/', "", +15555555555);
。
如有任何帮助,我们将不胜感激!
只需替换其中的+1
$phone_num = "+15555555555";
$phone_num = preg_replace('/\+1/','',$phone_num);
echo $phone_num;
或者您可以使用 str_replace('+1','',$phone_num),或者。我总是出于习惯使用 preg_replace。
你不需要为此使用正则表达式。
str_replace('+1', '', $string)
会做到的。但是,为了解释您的正则表达式当前失败的原因,您的字符串不是以 1
开头,而是以 +1
开头,因此 ^1
不匹配。
当前使用演示:https://regex101.com/r/kwwp1r/1/
可能的正则表达式解决方案演示:https://regex101.com/r/kwwp1r/2/
^\+1
我一直在尝试将 phone 个数字验证为 5555555555 格式。我已经成功地去除了所有特殊字符的 phone 数字,但是如果使用 +15555555555 输入 phone 数字,该数字的开头仍然包含“1”。有没有办法同时删除 +1 和特殊字符?
我当前的正则表达式是 preg_replace('/^1|\D/', "", +15555555555);
。
如有任何帮助,我们将不胜感激!
只需替换其中的+1
$phone_num = "+15555555555";
$phone_num = preg_replace('/\+1/','',$phone_num);
echo $phone_num;
或者您可以使用 str_replace('+1','',$phone_num),或者。我总是出于习惯使用 preg_replace。
你不需要为此使用正则表达式。
str_replace('+1', '', $string)
会做到的。但是,为了解释您的正则表达式当前失败的原因,您的字符串不是以 1
开头,而是以 +1
开头,因此 ^1
不匹配。
当前使用演示:https://regex101.com/r/kwwp1r/1/
可能的正则表达式解决方案演示:https://regex101.com/r/kwwp1r/2/
^\+1