input正则校验手机号
时间: 2023-08-31 16:12:52 浏览: 43
以下是一种校验中国手机号的正则表达式:
```
^1[3-9]\d{9}$
```
解释:
- `^`:表示字符串的开始。
- `1`:表示手机号码的开头必须是数字1。
- `[3-9]`:表示第二个数字必须是3至9之间的一个数字。
- `\d{9}`:表示后面必须跟9个数字。
- `$`:表示字符串的结束。
因此,这个正则表达式可以匹配一个长度为11位的中国手机号。
相关问题
input正则校验手机号怎么使用
下面是一个示例代码,使用正则表达式校验手机号码:
```python
import re
def check_phone_number(phone_number):
# 定义手机号码的正则表达式
pattern = r'^1[345789]\d{9}$'
# 使用re模块的match函数进行匹配
match_result = re.match(pattern, phone_number)
if match_result:
# 匹配成功,返回True
return True
else:
# 匹配失败,返回False
return False
# 测试代码
phone_number = '13812345678'
if check_phone_number(phone_number):
print('手机号码格式正确')
else:
print('手机号码格式错误')
```
在上面的示例代码中,定义了一个名为`check_phone_number`的函数,用于校验手机号码的格式是否正确。该函数接受一个参数`phone_number`,即待校验的手机号码。在函数内部,使用正则表达式`r'^1[345789]\d{9}$'`来定义手机号码的格式,其中:
- `^`表示字符串的开头
- `1`表示手机号码开头必须是1
- `[345789]`表示第二位可以是3、4、5、7、8、9中的任意一个数字
- `\d{9}`表示后面9位必须是数字
- `$`表示字符串的结尾
然后使用`re.match`函数对`phone_number`进行匹配,如果匹配成功,则返回True,否则返回False。最后在测试代码中,调用`check_phone_number`函数,并根据返回值输出相应的提示信息。
el-input正则校验手机号怎么使用
你可以使用el-input组件的属性validator来实现正则校验手机号。具体步骤如下:
1. 在el-input组件中设置validator属性,将其值设置为一个函数。
```
<el-input v-model="phone" placeholder="请输入手机号" :validator="checkPhone"></el-input>
```
2. 在methods中定义checkPhone函数,使用正则表达式判断手机号是否合法,并返回一个布尔值。
```
methods: {
checkPhone(rule, value, callback) {
const phoneReg = /^1[3456789]\d{9}$/;
if (!phoneReg.test(value)) {
callback(new Error('手机号格式不正确'));
} else {
callback();
}
}
}
```
3. 当输入手机号时,输入框会自动调用checkPhone函数进行校验,如果手机号不合法,会返回一个错误信息,否则返回null。
完整代码如下:
```
<template>
<div>
<el-input v-model="phone" placeholder="请输入手机号" :validator="checkPhone"></el-input>
</div>
</template>
<script>
export default {
data() {
return {
phone: ''
}
},
methods: {
checkPhone(rule, value, callback) {
const phoneReg = /^1[3456789]\d{9}$/;
if (!phoneReg.test(value)) {
callback(new Error('手机号格式不正确'));
} else {
callback();
}
}
}
}
</script>
```