正则表达式,用于验证邮政编码和电话号码

问题描述

| 我正在创建一个带有警告元素的表单。一切都很好,但是需要更好地定义我的模式。
                $(\"#postcode\").inputNotes( 
              {
                warning: {
                  pattern: /^[0-9]+$/,type: \'note\',text: \'Only numbers,please ...\',inversedBehavior: true
                }
              }
            );
            $(\"#phone\").inputNotes( 
              {
                warning: {
                  pattern: /^[0-9]+$/,no spaces please ...\',inversedBehavior: true
                }
              }
            );
对于邮政编码警告,我希望模式期望4个数字 对于“电话”警告,我希望模式期望10个数字。 任何帮助表示赞赏。     

解决方法

        更新: 对于6位或10位数字:  
pattern: /^[0-9]{10}|[0-9]{6}$/,
对于四位数的邮政编码:
pattern: /^[0-9]{4}$/,
对于10位数的电话号码: (如果电话号码不能以0开头)  
pattern: /^[1-9][0-9]{9}$/,
(如果电话号码可以以0开头)  
pattern: /^[0-9]{10}$/,
    ,        以下是澳大利亚邮政编码的规则: ACT:0200-0299和2600-2639。 新南威尔士州:1000-1999、2000-2599和2640-2914。 NT:0900-0999和0800-0899。 昆士兰州(QLD):9000-9999和4000-4999。 SA:5000-5999。 TAS:7800-7999和7000-7499。 VIC:8000-8999和3000-3999。 西澳大利亚州:6800-6999和6000-6799 正则表达式:^(0 [289] [0-9] {2})|([1345689] [0-9] {3})|(2 [0-8] [0-9] {2})| (290 [0-9])|(291 [0-4])|(7 [0-4] [0-9] {2})|(7 [8-9] [0-9] {2} )$ 通过:0200 |||| 7312 ||| 2415 失败:0300 |||| 7612 ||| 2915     ,        对于4位邮政编码,可以使用
/^\\d{4}$/
。 对于10位邮政编码,您可以使用
/^\\d{10}$/
。 请记住,有些人会在电话号码中输入空格,括号等。在用strip7ѭ验证之前,应先去除所有非数字。     ,        不要使用
+
修饰符,而应尝试使用
{num}
,其中
num
是所需的上一个原子的实例数。     ,        澳大利亚邮政在2019年大大简化了规则。 现在,您只需要考虑以下范围: 0200 – 0299、0800-0999和1000 – 9999 因此,用于验证澳大利亚邮政编码的正则表达式仅为:
^(0[289][0-9]{2})|([1-9][0-9]{3})$
    

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...