var str = "a,b,c,70,90"; var str2 = str.replace(/\d{1,}/g, "100"); //g是替换全部 console.log(str2); //吧,.都改成。 var str = "a,b,c,70,90."; var str2 = str.replace(/[ , , .]/g, "。"); //g是替换全部 console.log(str2); var stra = " abc " function MyTirm(stra) { var str3 = stra.replace(/^\s+|\s+$/g, ""); //去掉前后空格空格换成空字符串 return str3; } var str2 = MyTirm(stra); console.log("==" + str2 + "==");
//想要的字符提取出来,提取邮箱 //来不及写
//math,提取符合要求的元素
//分组提取,提取邮箱的每一个部分
RegExp.$1, RegExp.$2, RegExp.$3
//检索字符indexof();lastindexof();返回下标
var str = "张三:1000,李四:5000,王五:8000。"; var arr = str.match(/\d+/g); console.log(arr); //math返回数组,提取元素
//exec只取一个,math可以取全部的
//正则对象:test,exec........字符串:math,spilt,search,
//用某个字符分隔字符串
var str = "123123@xx.com,fangfang@valuedopinions.cn 286669312@qq.com 2、emailenglish@emailenglish.englishtown.com 286669312@qq.com..."; var arr = str.match(/\w+@\w+(\.\w+)+/g); console.log(arr);
//6 分组提取
//提取email中的每一部分 var str = "123123@xx.com"; var reg = /(\w+)@(\w+)\.(\w+)(\.\w+)?/; var array = str.match(reg); //获取分组的数据 ()是分组 console.log(RegExp.$1); //123123 console.log(RegExp.$2); //xx console.log(RegExp.$3); //com //分组练习 var str = "5=a, 6=b, 7=c"; str = str.replace(/(\d)=(\w)/g, "$2====$1"); //吧567分3组,吧abc分3组,2组在前面,1组在后面 console.log(str);
//i 忽略大小写
//g 全局匹配
//控制字符串相关方法
//1、正则对象的 test exec
//2、字符串的 replace search match split
//用法:
console.log(/\d/.test("123")); console.log(/[\u4e00-\u9fa5]{3}/.test("哈你好")); //除了.test和search方法能直接执行,math,replace,split,exec都需要数组接收返回值 var str = "abc100,ccc200,ddd300"; var arr = /\d+/.exec(str); console.log(arr + "这儿"); //100//只能匹配一项,可以用在分组匹配 var arr = str.match(/\d+/g); console.log(arr); var str = "abc100ccc200ddd300"; var arr = str.split(/\d+/); console.log(arr); var str = "哈哈哈哈,100分"; //检索里面数字出现的下标 console.log(str.search(/\d+/)); var str = "abcdebfg"; var strNew = str.replace("b", "d"); console.log(strNew); console.log(str); var v = 2 new RegExp("^\\d+" + v + "$").test(12) //true
总结
以上所述是小编给大家介绍的正则表达式使用示例详解,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!
您可能感兴趣的文章: