表达式如下:var reg=/^(?=.*\d)(?=.*[\\\/\*\-\+\!\@\#\$\%\,\;])(?=.*[a-zA-Z])[0-9a-zA-Z\\\/\*\-\+\!\@\#\$\%\,\;]{8,}$/好复杂啊,不懂,请大侠解析一下啊

解决方案 »

  1.   

    ^(?=.*\d)匹配以任意多个字符开头紧跟一个数字的【位置】
    (?=.*[\\\/\*\-\+\!\@\#\$\%\,\;])这一段可以改成(?=.*[-\/*+!@#$%,;])匹配任意多个字符紧跟着中括号里任意一个符号的位置
    (?=.*[a-zA-Z])[0-9a-zA-Z\\\/\*\-\+\!\@\#\$\%\,\;]$这一段可以改成(?=.*[a-zA-Z])[-0-9a-zA-Z\/*+!@#$%,;]$匹配任意多个字符紧跟一个英文字符的位置,后面匹配8至任意多个后面中括号里的字符结尾
      

  2.   


    以任意字符加数字开头,后跟特殊字符,然后从特殊字符左起,查找任意字符+单个字母,贪婪匹配至符合的全部,然后左起匹配字母/数字/特殊字符至少8位,并以此结尾正确匹配项:t2#abcdeefyuie不符合:t2#abcde我efyuie
      

  3.   

    下面就是这个模式能匹配的文本,很奇怪"7\Kz*67%8q$C"
    "PB\01\U96pz%;oL2#"
    "J/8mO;y;aC-p$!w*"
    "8\z{Sj$xT#+954d"
    "2@ZA/;!-,n;"
    "P]$Xr08+Be;#x;#\P;vQ/"
    "8/W%xyRu#/J"
    "Y2@ypX;;5+y--"
    "u1\mB@u!/+*V6l%"
    "9\t7{@s##$8$$;d"