1. 验证密码,至少为字母、数字、符号两种组成,不包含空格,不能输入中文
re.match(r'(?!^\d+$)(?!^[A-Za-z]+$)(?!^[^A-Za-z0-9]+$)(?!^.*[\u4E00-\u9FA5].*$)^\S{6,20}$', password)
或
re.match(r'((?=.*\d)(?=.*\D)|(?=.*[a-zA-Z])(?=.*[^a-zA-Z]))(?!^.*[\u4E00-\u9FA5].*$)^\S{6,20}$', password)
2.验证密码,至少为字母、数字、下划线两种组合, 可包含空格和中文
re.match(r'^(?![\d]+$)(?![a-zA-Z]+$)(?![^\da-zA-Z]+$).{6,20}$', password)