我有这样的标签,如何最好地获取这些属性的每个键和值并将其填充到一个数组中(属性的数量会增加)?
myData = '[data attr1="value1" attr2="value2" attr3="value3"]';
并获取结果数组:
var arr = new Array();
arr['attr1'] = "value1";
arr['attr2'] = "value2";
arr['attr3'] = "value3";
and so on...
最佳答案
虽然它假设 tag
已经是您所描述的格式,即 [data ... ]
的单次出现,但这可能会满足您的要求。
此外,正则表达式完全基于我在您的问题中看到的内容;不确定它是否会在其他字符串上中断。
function decode(tag)
{
var r = /(\w+)="([^"]*)"/g,
h = {};
while ((m = r.exec(tag)) !== null) {
h[m[1]] = m[2];
}
return h;
}
关于javascript - 如何在 Javascript 上解析括号标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11220790/