php的正则表达式国外手机号
时间: 2023-09-08 15:09:20 浏览: 42
以下是匹配国外手机号码的 PHP 正则表达式:
```php
/^\+?\d{1,3}\s?[-.\s]?\(?\d{3}\)?[-.\s]?\d{3}[-.\s]?\d{4}$/i
```
该正则表达式可以匹配以下格式的国外手机号码:
- +1 123-456-7890
- +44 123 456 7890
- +86 12345678901
- +91 (123) 456-7890
其中,加号是可选的,国家代码最多可以是三位数,区号可以用括号括起来,分隔符可以是空格、连字符或点号。
相关问题
python 正则表达式匹配手机号码
可以使用 Python 中的 re 模块来实现正则表达式匹配手机号码。以下是一个示例代码:
```python
import re
# 定义手机号码正则表达式
phone_pattern = r'^1[3-9]\d{9}$'
# 测试用例
test_cases = ['13812345678', '19987654321', '12345678901', '19234567890']
# 匹配手机号码
for phone in test_cases:
match = re.match(phone_pattern, phone)
if match:
print(f"{phone} 是合法的手机号码")
else:
print(f"{phone} 不是合法的手机号码")
```
正则表达式 `r'^1[3-9]\d{9}$'` 匹配的是以数字 1 开头,第二位是 3-9 中的任意一个数字,后面跟着 9 个数字的字符串,也就是手机号码的格式。
正则表达式验算手机号
在JavaScript中,可以使用正则表达式来验证手机号码。一个常见的正则表达式是:/^(1[3456789]\d{9})$/。这个正则表达式可以验证以1开头的11位数字,其中第二位可以是3、4、5、6、7、8、9中的任意一个数字。在JavaScript中,可以使用test()方法来验证手机号码是否符合这个正则表达式,例如:
```javascript
var phoneNumber = "13693347897";
var regex = /^(1[3456789]\d{9})$/;
var isValid = regex.test(phoneNumber);
console.log(isValid); // 输出true
```
在Java中,也可以使用正则表达式来验证手机号码。一个常见的正则表达式是:"^(1[3456789]\\d{9})$"。可以使用Pattern和Matcher类来进行验证,例如:
```java
import java.util.regex.*;
public class Main {
public static void main(String[] args) {
String phoneNumber = "13693347897";
String regex = "^(1[3456789]\\d{9})$";
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(phoneNumber);
boolean isValid = matcher.matches();
System.out.println(isValid); // 输出true
}
}
```
以上是两种常见的验证手机号码的正则表达式和使用方法。