【发布时间】:2013-04-30 12:51:54
【问题描述】:
是否可以只用一个正则表达式将target="_blank" 添加到所有<a> 标签?我一直在尝试消极和积极的展望/落后,但无济于事。这应该:
- 匹配
href以http://开头的锚标签 - 如果锚标签没有
target标签,添加target="_blank"标签 - 如果确实有
target标签,它会检查target标签是否尚未设置为"_blank",如果没有,则将其替换为target="_blank"
这可能吗?如果不是,那么计算量最少的方法是什么?
【问题讨论】:
-
您是尝试通过嵌入在 html 页面中的脚本(例如 Javascript)执行此操作,还是针对 html 文件运行程序?
-
你想要一个正则表达式来设置一些东西吗?他们不是用来匹配字符串和模式的吗?
-
请记住,在 HTML 中,标签属性没有严格的顺序。这样
<a href="#" target="_blank"></a>和<a target="_blank" href="#"></a>都是有效的。 -
@DioF:你不会从评论投票中获得代表,所以链接它很有趣(并且警告 OP 实际上不要尝试只使用正则表达式)。
标签: javascript jquery regex dom