参考:http://www.soulogic.com/doc/RegularExpressions/
自己分析更好

解决方案 »

  1.   

    只要符合下列方法,就正确:
    XXXX-XXXXXXX、XXXX-XXXXXXXX XXX-XXXXXXX XXX-XXXXXXXX XXXXXXX XXXXXXXX
      

  2.   

    \d表示数字[0-9]
    +是把前面的东西匹配一次以上
    -在这里是个符号,
    \d+-表示,一个或一个以上的数字再接一个符号"-"
    ?表示把前面的字符匹配一次一上
    (\d+-)? 表示把 一个或一个以上的数字再接一个符号"-" 的字符串 重复一次一上
      

  3.   

    (\d{4}-?\d{7}
    \d{4} 表示显示四位数
    然后接一个"-"
    在把四位数后接"-"的字符串重复一次以上
    然后再接7位数字
      

  4.   

    |\d{3}-?\d{8}|^\d{7,8})(-\d+)?""|"表示或者\d{3}-?\d{8} 这个应该能明白了吧: 3位数字后接"-"然后再接8位数字^ 表示匹配开始,你先可以忽略它\d{7,8})(-\d+)?先是一个7位或8位的数字,再接"-",在接一个一位或一位一上数字串