JAVA利用正则表达式判断手机号是否合法
时间: 2023-07-12 07:15:15 浏览: 236
可以使用Java的正则表达式来判断手机号是否合法。以下是一个示例代码,可以匹配中国大陆的手机号码:
```java
public static boolean isPhoneNumberValid(String phoneNumber) {
String regex = "^1[3456789]\\d{9}$";
return phoneNumber.matches(regex);
}
```
在这个正则表达式中:
- `^` 表示字符串的开头;
- `1` 表示手机号的第一位必须是数字1;
- `[3456789]` 表示手机号的第二位可以是3、4、5、6、7、8、9中的任意一个;
- `\\d{9}` 表示手机号的后9位必须是数字;
- `$` 表示字符串的结尾。
因此,这个正则表达式可以匹配符合条件的手机号。如果传入的手机号符合这个正则表达式,那么 `matches()` 方法将返回 `true`,否则返回 `false`。
相关问题
java正则判断11位手机号码_Java正则表达式判断手机号的例子
Java正则表达式判断手机号的例子:
```java
public static boolean isPhoneNumber(String phone) {
String regex = "^1[3|4|5|6|7|8|9]\\d{9}$";
return Pattern.matches(regex, phone);
}
```
上面的代码中,使用了正则表达式 `^1[3|4|5|6|7|8|9]\\d{9}$` 来判断手机号是否合法。其中:
- `^` 表示字符串的开头
- `1` 表示手机号的第一位必须是1
- `[3|4|5|6|7|8|9]` 表示手机号的第二位必须是3、4、5、6、7、8或9中的一个
- `\\d{9}` 表示手机号的后9位必须是数字
- `$` 表示字符串的结尾
如果需要判断是否为11位手机号,可以稍微修改一下正则表达式,如下所示:
```java
public static boolean isElevenPhoneNumber(String phone) {
String regex = "^1[3|4|5|6|7|8|9]\\d{8}\\d$";
return Pattern.matches(regex, phone);
}
```
其中,`\d{8}\\d` 表示手机号必须是11位数字。
使用正则表达式检验手机号是否合法
使用正则表达式检验手机号是否合法的方法如下:
1. JavaScript示例:
```javascript
function validatePhoneNumber(phoneNumber) {
var regex = /^1[3-9]\d{9}$/;
return regex.test(phoneNumber);
}
var phoneNumber1 = "13812345678";
var phoneNumber2 = "12345678901";
console.log(validatePhoneNumber(phoneNumber1)); // 输出:true
console.log(validatePhoneNumber(phoneNumber2)); // 输出:false
```
2. PHP示例:
```php
function validatePhoneNumber($phoneNumber) {
$regex = '/^1[3-9]\d{9}$/';
return preg_match($regex, $phoneNumber);
}
$phoneNumber1 = "13812345678";
$phoneNumber2 = "12345678901";
echo validatePhoneNumber($phoneNumber1); // 输出:1
echo validatePhoneNumber($phoneNumber2); // 输出:0
```
3. Java示例:
```java
public class PhoneNumberValidator {
public static void main(String[] args) {
String phoneNumber1 = "13812345678";
String phoneNumber2 = "12345678901";
System.out.println(validatePhoneNumber(phoneNumber1)); // 输出:true
System.out.println(validatePhoneNumber(phoneNumber2)); // 输出:false
}
public static boolean validatePhoneNumber(String phoneNumber) {
String regex = "^1[3-9]\\d{9}$";
return phoneNumber.matches(regex);
}
}
```
阅读全文