像我有以下变量:Javascript正则表达式。获得SRC
myvar = '<img src=".images/myimage.jpg"/>';
我怎样才能得到只有“.images/myImage.jpg”这个参数中使用正则表达式中的变量?
像我有以下变量:Javascript正则表达式。获得SRC
myvar = '<img src=".images/myimage.jpg"/>';
我怎样才能得到只有“.images/myImage.jpg”这个参数中使用正则表达式中的变量?
不需要可能有问题的正则表达式。
var src = $(myvar).attr('src');
哦,6个投票在40秒内。我认为更多的jQuery的子用户标签.. – 2015-03-13 12:43:15
这是正确的答案,底下是'$'函数解析HTML字符串来构建一个DOM元素,然后检索它的'src'属性,这种方法的主要好处是它保证正确解析HTML。 – 2015-03-13 12:43:23
只是为了好玩,Vani lla JS解决方案:http://jsfiddle.net/466jgppd/ – 2015-03-13 12:47:12
Using Regular Expression is not the way to go, you should instead parse the HTML.
你可以使用jQuery,快速解析HTML,然后src
属性。 This other answer是很好的,你应该使用,如果jQuery被加载。
尽管如此,如果没有加载jQuery,您不应该只为此加载它。
如果你想获得src
属性或属性(它们不相同),你可以创建一个div并插入你的HTML字符串。然后,您将能够遍历DOM并获得图像src
。
var wrapper = document.createElement('div');
wrapper.innerHTML = '<img src=".images/myimage.jpg"/>';
var img = wrapper.querySelector('img');
console.log(img.src);
console.log(img.getAttribute('src'));
请注意,此代码段假设字符串中总是会有图像。没有条件来防止错误(但很容易)。
。感谢您的工作并参考我的答案。 – 2015-03-13 13:42:17
' “([^”] *)“'抢你从指数要串1 – 2015-03-13 12:41:32
http://stackoverflow.com/questions/1732348/regex-match-open-tags-except -xhtml-self-contained-tags – Luizgrs 2015-03-13 12:41:58
为什么使用正则表达式??你可以使用子字符串。我可以告诉你怎么做,如果你想 – gon250 2015-03-13 12:42:13