我很难在js中创建正则表达式来查找,提取和替换所有html链接标记为纯文本链接。
我的JS看起来像这样:
var str = value.replace(/<a .*href="([^\'\"]+).*?<\/a>/g, "$1");
这是我拥有的value
字符串:
<a href="http://google.com" target="_blank">clicdk here</a> Text to keep! <a href="http://facebook.com" target="_blank">click ffhere</a>
这是我期望得到的:
http://google.com Text to keep! http://facebook.com
这是我得到的:
http://facebook.com
如果从换行符中插入第二个链接,效果很好,但是问题是我的字符串没有换行符。
请参阅我的无效正则表达式示例here。
谢谢。
答案 0 :(得分:1)
var str = value.replace(/<a *href="([^\'\"]+).*?<\/a>/g, "$1");
尝试一下。参见正则表达式示例here。
如果您的字符串是这样的:
<a class='ss' href="http://google.com" target="_blank">clicdk here</a> Text to keep! <a class='ss' href="http://facebook.com" target="_blank">click ffhere</a>
然后尝试一下
var str = value.replace(/<a .*? *href="([^\'\"]+).*?<\/a>/g, "$1");
请参见正则表达式here。