正则
可以使用RegExp构造函数来创建对象
正则表达式在斜杠中间
var test = /js$/
字符类
重复
选择 分组 引用
// 匹配 ab 或cd 或ef
var test = / ab | cd | ef /
// 三个数字或四个字母
var test2 = /\d{3} | [a-z]{4}/
指定位置匹配
修饰符
- i 不区分大小写
- g 全局匹配
- m 多行匹配 ^ 开头 $结尾
正则表达式方法
search()
返回第一个与之匹配的子串的起始位置,
找不到返回-1
不支持全局搜索
replace
检索和替换
match()
返回由匹配结果组成的数组
var url = / (\w) : \/\/ ([\w.]+)\/ (\S*) /;
var text = 'www.baidu.com'
var result = text.match(url)
// result 是一个数组
test exec
应用
<el-dialog
title="联系方式"
:visible.sync="dialogVisible"
width="650px">
<div class="dcontent">
<el-form :model="elinfo" :rules="rules" ref="elinfo" label-width="100px" class="demo-ruleForm">
<el-form-item label="姓名" prop="LinkName">
<el-input v-model="elinfo.LinkName"></el-input>
</el-form-item>
<el-form-item label="电话" prop="LinkTel">
<el-input v-model="elinfo.LinkTel"></el-input>
</el-form-item>
<el-form-item label="邮箱" prop="Email">
<el-input v-model="elinfo.Email"></el-input>
</el-form-item>
<el-form-item label="地址" prop="LinkAddr">
<el-input v-model="elinfo.LinkAddr"></el-input>
</el-form-item>
</el-form>
<div style="text-align: right">
<el-button @click="dialogVisible = false">取 消</el-button>
<el-button type="primary" @click="save(elinfo)">保 存</el-button>
</div>
</div>
</el-dialog>
<script>
export default {
data() {
var checkEmail = (rule, value, callback) => {
var reg = new RegExp("^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+(\\.[a-zA-Z0-9-]+)*\\.[a-zA-Z0-9]{2,6}$");
if (!value) {
return callback(new Error('邮箱不能为空'));
} else if (!reg.test(value)) {
return callback(new Error('邮箱格式不正确'));
}
};
return {
elinfo: {},
showResouse: {},
currentAddress: null,
rules: {
LinkName: [
{required: true, message: '请输入姓名', trigger: 'blur'},
{min: 2, max: 5, message: '长度在 2 到 5 个字符', trigger: 'blur'}
],
LinkTel: [
{required: true, message: '请输入手机号', trigger: 'blur'},
{min: 11, max: 11, message: '手机号格式不正确', trigger: 'blur'}
],
Email: [
{required: true, validator: checkEmail, trigger: 'blur'}
],
LinkAddr: [
{required: true, message: '请输入地址', trigger: 'blur'},
{min: 5, max: 50, message: '请输入详细地址', trigger: 'blur'}
],
}
}
},
</script>