我不是最好的正则表达式,需要一些帮助。
我有这样的字符串:data-some-thing =" 5 10 red"。 Word'数据 - 一些'是不变的'事情'变化。 '的事情'也可能包含短划线。双引号中的值仅包含字母数字符号或空格。
是否有可能获得'和仅使用正则表达式的双引号中的值?如果是,那么我应该使用什么表达式?我尝试过使用外观,但没有取得多大成功。
答案 0 :(得分:3)
您可以使用:
var result = data.match(/data-some-(.*?)="(.*?)"/);
结果数组将包含三个元素:
演示:
var data = 'data-some-thing="5 10 red"';
var result = data.match(/data-some-(.*?)="(.*?)"/);
document.write(result[1] + '<br>' + result[2]);
&#13;
<强>声明:强>
请注意,如果您在较大的HTML解析环境中执行此操作(问题中未提及),则不应使用正则表达式。相反,您应该将HTML字符串加载到DOM中,并使用DOM方法查找您感兴趣的属性名称和值对。
对于 node.js ,您可以使用npm模块jsdom和htmlparser来执行此操作。