java正则表达式,大写字母、小写字母、特殊字符、数字 两种两种以上组合匹配
2014-01-23 23:55
1806 查看
package test; import java.util.regex.Matcher; import java.util.regex.Pattern; public class zhengze { /** * @param args */ public static void main(String[] args) { String str="```#$%^!!"; String regEx="[`~!@#$%^&*()+=|{}':;',\\[\\].<>/?~!@#¥%……&*()——+|{}【】‘;:”“’。,、?]{6,8}$"; //①构造一个模式. Pattern p=Pattern.compile(regEx); Pattern pA=Pattern.compile("^[A-Z]{6,8}$"); Pattern pa=Pattern.compile("^[a-z]{6,8}$"); Pattern pNum=Pattern.compile("^[0-9]{6,8}$"); //②建造一个匹配器 Matcher m = p.matcher(str); Matcher m1 = pA.matcher(str); Matcher m2 = pa.matcher(str); Matcher m3 = pNum.matcher(str); //大小写字母,数字,特殊字符 全集匹配(只要字符串匹配其中任何一个或多个都可以) String reg="([A-Z]|[a-z]|[0-9]|[`~!@#$%^&*()+=|{}':;',\\[\\].<>/?~!@#¥%……&*()——+|{}【】‘;:”“’。,、?]){6,8}$"; Pattern pAll=Pattern.compile(reg); Matcher mAll = pAll.matcher(str); //③进行判断,得到结果 //因为字符串str如果匹配一个就不可能匹配其他的,具有互异性。还要排除都不匹配的情况,不满足这四项的字符 if(m.matches()||m1.matches()||m2.matches()||m3.matches()){ System.out.println("只满足一种情况不符合要求"); }else if(mAll.matches()){ System.out.println("符合6-8位的密码要求"); }else{ System.out.println("不符合要求"); } } }
或是用一个正则表达式
Pattern p = Pattern.compile("^(?![A-Z]*$)(?![a-z]*$)(?![0-9]*$)(?![^a-zA-Z0-9]*$)\\S{6,8}$");
js正则匹配:/^(?![A-Z]+$)(?![a-z]+$)(?!\d+$)(?![\W_]+$)\S{6,8}$/;
验证邮箱账号
String regAcount="^[a-zA-Z]*\\d+{0,20}$";
Pattern pAcount=Pattern.compile(regAcount);
Matcher mAcount = pAcount.matcher(acount);
String regemail="^[a-z0-9-]+(.[_a-z0-9-]+)*@([_a-z0-9-]+.)+([a-z]{2}|aero|arpa|biz|com|cn|coop|edu|gov|info|int|jobs|mil|museum|name|nato|net|org|pro|travel)$";
Pattern pemail=Pattern.compile(regemail);
Matcher memail = pemail.matcher(acount);
if(!(mAcount.matches()||memail.matches())){
errStr = "账号必须是数字、工号或邮箱";
return errStr;
}
相关文章推荐
- 正则表达式之密码效验(检验密码是含有小写字母、大写字母、数字、特殊符号的两种及以上)
- 至少10位数,至少包含一个大写字母,至少一个小写字母,至少一个数字,(:;=*@)特殊字符中的一个正则表达式
- 正则表达式:大写字母 小写字母 数字 特殊字符(四种里至少三种)
- 必须包含“数字”,“字母”,“特殊字符” 两种以上的正在表达式!
- 正则表达式验证由数字,大写字母,小写字母,特殊符,至少其中三种组成密码
- js 正则表达式 匹配除汉字,字母,数字,逗号,句号外的特殊字符(用来规范输入内容)
- 常用正则表达式汇总—(数字匹配/字符匹配/特殊匹配)
- @V@ java代码笔记2010-06-12:java控制台输入各类型类实现;以及判断输入字符串里面是否有数字的两种方法:方法1:转换成字符数组;方法2:正则表达式。
- 正则表达式匹配大写,小写,数字及特殊字符
- 正则表达式之密码效验(检验密码是含有小写字母、大写字母、数字、特殊符号的两种及以上)
- java中使用正则表达式匹配特殊字符串
- 密码强度正则表达式 – 必须包含大写字母,小写字母和数字,至少8个字符等
- java正则表达式匹配字符串字母,数字,空格和其他字符出现次数
- js中使用正则表达式(五)特殊字符、匹配模式、捕获组与反向引用介绍
- 正则表达式之密码效验(检验密码是含有小写字母、大写字母、数字)
- java正则表达式,读取字符串不区分大小写;正则匹配表达式中的数字或者字母;正则匹配网页中的邮箱
- 最全的常用正则表达式大全——包括校验数字、字符、一些特殊的需求等等
- 最全的常用正则表达式大全——包括校验数字、字符、一些特殊的需求等等
- Java处理特殊字符替换(正则表达式)
- jQuery验证,匹配输入非中文的正则表达式,输入内容可以是包括空格等特殊字符的任何字符。