繁体   English   中英

需要爱尔兰电话号码的正则表达式

[英]Need a regular expression for an Irish phone number

我需要验证一个爱尔兰电话号码,但我不想让它太用户不友好,很多人习惯写电话号码用括号包裹他们的区号,然后是5到7位的数字,有些在区号或移动运营商。

爱尔兰座机号码的格式是1到4位数之间的区号和5到8位之间的数字。

例如

(021) 9876543  
(01)9876543  
01 9876543  
(0402)39385

我正在寻找Javascript / PHP的正则表达式。

值得一看的是Validate_IE类 - 它包含一个phoneNumber函数,可以处理各种可能的爱尔兰电话号码(有/无区号,手机号码,移动短码等)。

此外,如果您正在处理爱尔兰数据,它还有一系列其他方法可能有一天可以用来验证从爱尔兰银行账户到驾驶执照号码的所有内容,非常值得一看!

试试这个:

http://regexlib.com/REDetails.aspx?regexp_id=2485

不包括区号的修改版本:

\d{3}\s\d{4}

这可能会奏效。 它应该考虑电话号码中任何地方的空间外观。

preg_match('|^\s*\(?\s*\d{1,4}\s*\)?\s*[\d\s]{5,10}\s*$|', $phone);

人们有时会将电话号码部分按空格分成两部分。

更新:如果您希望同时验证电话号码和修剪空格,您可以这样做:

if (preg_match('|^\s*(\(?\s*\d{1,4}\s*\)?\s*[\d\s]{5,10})\s*$|', $phone, $m))
{
    echo $m[1];
}

如果是我,我会删除空格和括号,然后验证它在最小和最大长度之间。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM