基础正则
正则表达式的创建
var checkNum = /^[A-Za-z0-9]+$/;
var re=new RegExp(“["+s1+"]“,”g”);
常用规则
用户密码:/^[a-zA-Z][a-zA-Z0-9_]{5,20}$/
邮件:/^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/
手机:/^[\d]{5,20}$/
方式:test
案例:邮箱提取
<script>
var str = 'zhangsan : 111@qq.com wangwu : 22@qq.com';
// var str = 'avccc111@qq.com123';
var reg =/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/g;
do {
var content = reg.exec(str);
if(content){
console.log(content[0]);
}
}while (content)
alert(reg.test(str));
</script>
正则对象
1.test 匹配
//提取email里面的每个部分
var str='11123456@qq.com'
//* 0次或多次 + 1次或多次 ?1次或0次
// /d数字 /w 数字字母下划线 .除了换行以外
var reg=/(\w+)@(\w+)\.(\w+)(\.\w+)?/;
if(reg.test(str)){
console.log(RegExp.$1);
console.log(RegExp.$2);
console.log(RegExp.$3);
console.log(RegExp.$4);
}
2.exec 提取
var str='张三:3000,李四:4000,王五:5000'
var =/\d+/;
do{
//获取内容
var content=reg.exec(str);
//在循环之前的初始化中,防止null输出
if(content){
console.log(content);
}
}while(content)
string
1.match 匹配
2.replace 替换
var str2='12397485';
//var str3=str2.replace('1','0');
// g全局匹配 i忽略大小写 gi全局匹配并忽略大小写
var str3=str2.replace(/\d/g,'a');
console.log(str3);
3.split 切割
var str='2019-10/14';
//console.log(str.split('-'));
console.log(str.split(/[-/]/));
4.search