日期:2014-05-17  浏览次数:20708 次

求java代码中验证电话号码的正则表达式(手机和固话),可不是js中
求java代码中验证电话号码的正则表达式(手机和固话),可不是js中。
------解决方案--------------------
手机:^1([\d]{10})$
电话^(\([0-9]+\))?[0-9]{7,8}$
电话号码7位或8位或前面有区号例如(022)87341628

------解决方案--------------------
上面的手机可用

但电话还应该改  有四种情况010-1234567 010-12345678  0755-1234564 0755-12345678
------解决方案--------------------
手机:^1([\d]{10})$
电话^(\([0-9]+\))?[0-9]{7,8}$

手机电话:^1([\d]{10})
------解决方案--------------------
(\([0-9]+\))?[0-9]{7,8}$

------解决方案--------------------
手机电话:^(1([\d]{10}))
------解决方案--------------------
((\([0-9]+\))?[0-9]{7,8})$
没测过,试下吧
------解决方案--------------------
已经测试过的,非常好用
function isPhoneNumber(str)
{
var reg=/^(\d{11})$
------解决方案--------------------
^(\d{3,5}[-]?\d{6,8})$/;
return str.match(reg);
}

------解决方案--------------------
楼主要java版的。。。
大家怎么不看仔细些。。。
------解决方案--------------------
java版不会,期待高手!
------解决方案--------------------
除了六楼他们给的都是java里能用的啊
		String str="13112341234,010-12456789,01012456789,(010)12456789,00861012456789,+861012456789";
Pattern p=Pattern.compile("1([\\d]{10})
------解决方案--------------------
((\\+[0-9]{2,4})?\\(?[0-9]+\\)?-?)?[0-9]{7,8}");
Matcher m=p.matcher(str);        
        while(m.find()){
            System.out.println(m.group());         
        }

------解决方案--------------------
//-------------手机号码,以1开始,13,15,18,19,为合法,后根9位数字------
String regEx="[1]{1}[3,5,8,6]{1}[0-9]{9}"; //表示a或f
boolean p = Pattern.compile(regEx).matcher("13558842633").find();
//-------------电话号码,以0开始,不含括号----------------------------------------------
String tregEx="[0]{1}[0-9]{2,3}-[0-9]{7,8}"; //表示a或f 0832-80691990
boolean tp = Pattern.compile(tregEx).matcher("028-80691990").find();

System.out.println(tp);