这是我的模式
<a href="(.*?)" onmousedown="test\(\)">
这是源
<tags><tags><a href="http://google.com" onmousedown="test()"></tags></tags>
如果我使用该模式,我会得到这个结果:
<a href="http://google.com" onmousedown="test()">
我想要的只是
http://google.com
任何帮助将不胜感激。谢谢! :)
答案 0 :(得分:0)
我稍微修改了正则表达式(在两端添加了.*
),以便它适合以下两个示例。
var regex = /.*?<a href="([^">]*)" onmousedown="test\(\)">.*/;
var input = '<tags><tags><a href="http://google.com" onmousedown="test()"></tags></tags>';
方法#1:使用正则表达式替换。在这种情况下,这将整个字符串与模式匹配,并将其替换为仅第一个捕获的组($1
)。
url1 = input.replace(regex, "$1");
alert(url1)
方法#2:使用正则表达式匹配输入字符串和模式,然后仅选择第一个捕获的组([1]
)。
url2 = regex.exec(input)[1];
alert(url2);
在这两种情况下,输出都是来自href
标记的网址。