写点正则表达式的
先浅记两条正则表达式:
1. 必须是大写字母、小写字母、数字、特殊符号(,.?)这四个组合,缺一不可。
(?![0-9a-zA-Z]+$)(?![a-zA-Z,\.\?]+$)(?![0-9A-Z,\.\?]+$)(?![a-z0-9,\.\?]+$)([0-9A-Za-z,\.\?]){6,16}
2. 必须有大写字母、小写字母、数字
(?![a-zA-Z]+$)(?![0-9A-Z]+$)(?![a-z0-9]+$).{6,16}
(反向引用)概念是模糊的,理解就凑合凑合一下吧
第1个:
(?![0-9a-zA-Z]+$) 意思就是匹配时,去掉0-9a-zA-Z这些字符,相当于反选?出现的就不要。
真正决定能匹配的字符在最后的 ([0-9A-Za-z,\.\?])
第2个:同理第一个,第一个()不要字母,第二个()不要数字和大写字母,第三个()不要小写字母和数字。最后的.是匹配除换行符以外的任意字符,整个组合起来就是:必须得有大写字母、小写字母、数字的组合。
这。。。我都不知道自己在写什么,凑合下吧。