1.常见表达式
abc 只能匹配abc
[abc] 匹配[]中的单一字符
[^abc] 不包含[]中的字符
\w 包含数字,字母,下划线
\W 不包含数字,字母,下划线
\d 数字
\D 不包含数字
\s 空白
\S 不包含空白
. 匹配单个任意字符
[]? ?表示出现0-1次
[]* *表示可以出现0到多次
[]+ +表示出现次数>=1次
[]{3} []中的字符可以出现3次
2.在String中提供的方法
matches():用于检测字符串是否匹配正则表达式
replaceAll(正则,字符串):替换字符串
split():拆分字符串
String regex = "正则表达式"
String a = ""
a.matches(regex) // 判断是否a是否符合正则表达式
3.在element组件中添加正则
<template>
<div>
<el-form :model="test" :rules="rules">
<el-form-item label="邮箱" prop="username">
<el-input v-model="test.email"></el-input>
</el-form-item>
</el-form>
</div>
</template>
<script>
export default{
data(){
// rule:当前对象,不常用 value:当前校验的数据 callback:回调函数
const checkEmail = (rule, value, callback) =>{
const emailRegex = /^[a-z0-9A-Z]+qq\.+com$/
if(emailRegex.test(value)){ // 判断是否符合正则规则
return callback()
}
callback(new Error("请正确填写邮箱"))
}
return{
test:{
email:''
}
rules:{ // 定义form组件
email:[
{ required: true, message: "请输入邮箱地址", trigger: "blur" },
{
min: 3,
max: 30,
message: "长度在 3 到 30 个字符",
trigger: "blur",
},
{ validator: checkEmail, trigger: "blur" },
]
}
}
}
}
</script>