密码:必须只含有特殊字符、数字和字母不含中文,6-12位。正则表达式怎么写?

本文详细介绍了一组正则表达式的使用案例,包括排除中文特殊字符、确保包含英文字母和数字、限定字符串长度等,适用于密码强度验证等场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

正则表达式:1、(?!.*[!·(){}【】“”:;,》¥、。‘’——\\s-……%\\n])  表示的是不含中文的特殊字符,以及空格与回车,里面的符合可以自动补充或删除;

2、(?=.*[a-zA-Z])   表示含小写或大写的英文字母

3、(?=.*\\d)  表示必须匹配到数字

4、(?=.*[~!@#$%^&*()_+`\\-={}:\";'<>?,.\\/])   表示含英文的特殊字符,里面的符合可以自动补充或删除

5、[^\\u4e00-\\u9fa5]  表示不允许有中文  ;表示允许有中文的,即:[\\u4e00-\\u9fa5]

6、{6,12}  表示长度要求,6~12位

String regex ="^(?!.*[!·(){}【】“”:;,》¥、。‘’——\\s-……%\\n])(?=.*[a-zA-Z])(?=.*\\d)(?=.*[~!@#$%^&*()_+`\\-={}:\";'<>?,.\\/])[^\\u4e00-\\u9fa5]{6,12}$";
        String str = "121是Az,./o";//带中文
        String str1 = "111111111";//纯数字
        String str2 = "aqzesxe";//纯英文
        String str3 = "12qa,";//长度只有5为数
        String str4 = "1qaaw2";//只有数字与英文字母
        String str5 = "1qazws2,.";//符合条件
        String str6 = "123qaz,/!";//存在中文特殊字符
        boolean isfalg =  str.matches(regex);
        boolean isfalg1 =  str1.matches(regex);
        boolean isfalg2 =  str2.matches(regex);
        boolean isfalg3 =  str3.matches(regex);
        boolean isfalg4 =  str4.matches(regex);
        boolean isfalg5 =  str5.matches(regex);
        boolean isfalg6 =  str6.matches(regex);
        System.out.println(isfalg);
        System.out.println(isfalg1);
        System.out.println(isfalg2);
        System.out.println(isfalg3);
        System.out.println(isfalg4);
        System.out.println(isfalg5);
        System.out.println(isfalg6);

结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值