我需要编写一个带字符串的python函数,并使用REGEX来检查字符串是否包含:
如果存在则返回true,否则返回false。我对函数很好,但是正则表达式遇到了麻烦。
到目前为止,我有: [A-Z]+\d{2,}[!@#\$&\*-_\.]{2}
我知道这行不通,因为我对regex不熟悉,所以我感到非常困惑。
谢谢你的帮助!
您可以使用
^(?=[^A-Z\r\n]*[A-Z])(?=[^\d\r\n]*\d[^\d\r\n]*\d)(?=.{6,8}$)[A-Z\d]*[!@#$&*_.-][A-Z\d]*[!@#$&*_.-][A-Z\d]*$
请注意\-
在字符类中转义或将其放在开头或结尾。否则它将表示一个范围。
说明
^
字符串开始(?=[^A-Z\r\n]*[A-Z])
积极向前看,断定字符AZ(?=[^\d\r\n]*\d[^\d\r\n]*\d)
正向向前看,断言2位数字(?=.{6,8}$)
正向超前,断言总共6-8个字符[A-Z\d]*[!@#$&*_.-][A-Z\d]*[!@#$&*_.-][A-Z\d]*
匹配2个“特殊”字符$
字符串末尾(或\Z
在后面没有换行符时使用)本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句