js用正则表达式来获取指定头和尾的字符串 全局
varstr="iid00100ffriid00200ffriid00300ffriid04000ffr";varsubstr=str.match(/iid(\S*?)f...
var str = "iid00100ffriid00200ffriid00300ffriid04000ffr";
var substr = str.match(/iid(\S*?)ffr/g);
结果如下:["iid00100ffr", "iid00200ffr", "iid00300ffr", "iid04000ffr"]
但是我想直接获取:["00100", "00200", "00300", "04000"]
正则表达式应该怎么改?谢谢! 展开
var substr = str.match(/iid(\S*?)ffr/g);
结果如下:["iid00100ffr", "iid00200ffr", "iid00300ffr", "iid04000ffr"]
但是我想直接获取:["00100", "00200", "00300", "04000"]
正则表达式应该怎么改?谢谢! 展开
1个回答
展开全部
我看了一下你要替换的字符串的规律,都是以Sele和下横线开头,紧接一串数字,最后以@号结尾。根据这个规律,我写了以下正则表达式,已调试成功:
var reg = /Sele_\d+@/g; // 给变量reg赋值正则表达式a = a.replace(reg, ""); // 代码解析:// 正则表达式用两个/号装起来// 其中\d表示数字// 后面跟着+号表示匹配1个或多个数字// 最后的字母g表示global(全局匹配),如果没有字母g则只匹配第一个……
var reg = /Sele_\d+@/g; // 给变量reg赋值正则表达式a = a.replace(reg, ""); // 代码解析:// 正则表达式用两个/号装起来// 其中\d表示数字// 后面跟着+号表示匹配1个或多个数字// 最后的字母g表示global(全局匹配),如果没有字母g则只匹配第一个……
追问
答非所问,能麻烦你看下问题在回答吗?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询