Java使用正则表达式验证手机号和电话号码的方法

一个朋友需要,所以写了这两个,话不多说,看代码

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

/**

* 获取当前的httpsession

* @return

*/

public static httpsession getsession() {

return getrequest().getsession();

}

/**

* 手机号验证

* @param str

* @return 验证通过返回true

*/

public static boolean ismobile(final string str) {

pattern p = null;

matcher m = null;

boolean b = false;

p = pattern.compile("^[1][3,4,5,7,8][0-9]{9}$"); // 验证手机号

m = p.matcher(str);

b = m.matches();

return b;

}

/**

* 电话号码验证

* @param str

* @return 验证通过返回true

*/

public static boolean isphone(final string str) {

pattern p1 = null, p2 = null;

matcher m = null;

boolean b = false;

p1 = pattern.compile("^[0][1-9]{2,3}-[0-9]{5,10}$"); // 验证带区号的

p2 = pattern.compile("^[1-9]{1}[0-9]{5,8}$"); // 验证没有区号的

if (str.length() > 9) {

m = p1.matcher(str);

b = m.matches();

} else {

m = p2.matcher(str);

b = m.matches();

}

return b;

}

public static void main(string[] args) {

string phone = "13900442200";

string phone2 = "021-88889999";

string phone3 = "88889999";

string phone4 = "1111111111";

//测试1

if(isphone(phone) || ismobile(phone)){

system.out.println("1这是符合的");

}

//测试2

if(isphone(phone2) || ismobile(phone2)){

system.out.println("2这是符合的");

}

//测试3

if(isphone(phone3) || ismobile(phone3)){

system.out.println("3这是符合的");

}

//测试4

if(isphone(phone4) || ismobile(phone4)){

system.out.println("4这是符合的");

}else{

system.out.println("不符合");

}

}

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对服务器之家的支持。如果你想了解更多相关内容请查看下面相关链接

原文链接:https://blog.csdn.net/moneyshi/article/details/53466795

本文链接:https://my.lmcjl.com/post/9164.html

展开阅读全文

4 评论

留下您的评论.