这是我的HTML字符串<img class='left' alt='""' src='182-35622' title='MyImage_147x91.png' uri='182-35622' style='width: 147px; height: 91px;'>
如何使用javascript从正则表达式中获取“title”值。
我希望输出应为“MyImage_147x91.png”
有什么建议吗?
我到目前为止尝试了它不起作用
var htmlString = "<img class='left' alt='""' src='182-35622' title='MyImage_147x91.png' uri='182-35622' style='width: 147px; height: 91px;'>"
var setCookieMetaRegExp = /<img title=[\"'](.*)[\"'].*>/ig;
var matches = [];
while (setCookieMetaRegExp.exec(htmlString)) {
//matches.push(RegExp.$1);
}
答案 0 :(得分:1)
为什么不使用HTML DOM信息来获取图片标题?
var img = document.querySelector('img.left');
console.log(img.title);
&#13;
<img class='left' alt='""' src='182-35622' title='MyImage_147x91.png' uri='182-35622' style='width: 147px; height: 91px;'>
&#13;
如果你真的需要在字符串上使用正则表达式,请尝试以下:
var s = "<img class='left' alt='""' src='182-35622' title='MyImage_147x91.png' uri='182-35622' style='width: 147px; height: 91px;'>";
var regex = /title\s*=\s*'([^']*)/;
console.log(regex.exec(s)[1]);
&#13;
正则表达式DEMO及解释
答案 1 :(得分:0)
你应该avoid using regular expressions to parse HTML。相反,请使用getAttribute
方法:
const img = document.querySelector('.left');
img.getAttribute('title'); // => MyImage_147x91.png
答案 2 :(得分:0)