最后10分 问个正则表达式的问题
在论坛看贴子的时候突然想起来自己以前的一个问题
要求一个手机号
139 或者 138 开头
如果是139开头 那第4位就不能是4 138开头的没有别的要求
这应该怎么写 ?? 谢谢回答!
------解决方案--------------------(139[\\d&&[^4]]\\d{7}|138\\d{8})
------解决方案-------------------- String s = "13841111111 ";
String regex = "^13(?!94)[89]\\d{8}$ ";
Pattern p = Pattern.compile(regex);
Matcher m = p.matcher(s);
if (m.matches()) {
System.out.println(m.group());
}
------解决方案--------------------139[012356789]\d{7}|138\d{8}
不觉得把两个正则连起来是什么丢人的事,相反,我觉得这是数学中问题分解的极好例子。