截取一个字符串内,指定两个字符之间的字符串, 并存入数组

mmyk 2013-03-19 04:39:35
var s = "(<input_1>/<spec_3>)*<price>*1";


怎么获取s中间的
input_1、spec_3、price
也就是<> 这2个符号之间的字符串,并存入array
...全文
326 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Jack_Tr丶 2013-03-19
  • 打赏
  • 举报
回复
var s = "(<input_1>/<spec_3>)*<price>*1"; while (s.indexOf(">") != -1) { var id1 = s.substring(s.indexOf("<") + 1, s.indexOf(">")); alert(id1); s = s.substring(s.indexOf(">") + 1); alert(s); } 楼主借鉴下吧~
天际的海浪 2013-03-19
  • 打赏
  • 举报
回复
这个更简单

var s = "(<input_1>/<spec_3>)*<price>*1";
var a = s.match(/<(.*)>/)[1].split(/>.*?</);
alert(a);
functionsub 2013-03-19
  • 打赏
  • 举报
回复
日。我就说我回过。。
functionsub 2013-03-19
  • 打赏
  • 举报
回复

var reg = /<([^>]*)>/gi;
var s = "(<input_1>/<spec_3>)*<price>*1";
var arr = []
s.replace(reg,function(){
    arr.push(arguments[1]);
})
console.log(arr)
。。我记得我回过来着,为啥没看到。。 跟4楼差不多,哈哈,不太会正则只能用replace来提取里面的文字了,正则直接match出来的还带2边的<>
天际的海浪 2013-03-19
  • 打赏
  • 举报
回复

var s = "(<input_1>/<spec_3>)*<price>*1";
var a = [];
s.replace(/<(.+?)>/g,function(a0,a1){a.push(a1)});
alert(a);
mmyk 2013-03-19
  • 打赏
  • 举报
回复
var s = "(<input_1>/<spec_3>)*<price>*1"; var arr1 = s.split(">"); var arr2 = new Array(); for(var i=0;i<arr1.length-1;i++){ arr2.push(arr1[i].split("<")[1]); } 自己这样实现,不过感觉有点本戳
functionsub 2013-03-19
  • 打赏
  • 举报
回复
var reg = /<([^>]*)>/gi;
var s = "(<input_1>/<spec_3>)*<price>*1";
var arr = []
s.replace(reg,function(){
    arr.push(arguments[1]);
})
console.log(arr)
不太会正则,,只能写成这样。。不要在意那个replace方法。
mmyk 2013-03-19
  • 打赏
  • 举报
回复
来个人帮解决啊

87,996

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧