我想以xxx-xxxxxxx格式验证爱尔兰手机号码。 前三位应为083,086,087或089.接下来的七位数应为整数。
我尝试使用此HTML5验证模式:
<input type="text" id="phone_no" name="owner[phone]" value="" pattern="([0]{1}[8]{1}[3|6|7|9]{1}[0-9]{7})">
代码无效。我该如何验证这些信息?
答案 0 :(得分:2)
您放在方括号中的任何内容都会转换为&#34;其中任何一个字符&#34;。
因此1[abcde]2
与1(a|b|c|d|e)2
此外,默认情况下,单个字母的大小为1。因此[x]{1}
与x
相同。
[0-9]
与数字相同,可以表示为\d
试试这个正则表达式,它更容易理解:
08[3679]-\d{7}
答案 1 :(得分:1)
相当古老的帖子,但这可能会帮助仍在寻找此帖子的人
/^\s*((\(?(0)\s?8[35679]\)?\s?\d{3}\s?\d{4}))\s*$/
答案 2 :(得分:0)
抱歉修改此
function is_phone_number($PhoneNumber)
{
$formats = array
(
'### ## # ### ###', //+265 12 3 456 789
'############', //265123456789
'##########', //123456789
'### # ### ###' //012 3 456 789
);
$format = trim(preg_replace('/[0-9]/', '#', $PhoneNumber));
return (in_array($format, $formats)) ? true : false;
}