【发布时间】:2013-11-04 14:24:30
【问题描述】:
我需要在 html 头部插入新标签。不在文档中,在包含 html 的字符串中。所以正则表达式是唯一的办法。
<head>
<title>Html</title>
</head>
得到这样的东西:
<head>
<title>Html</title>
<script src="some_path.js"></script>
</head>
还有更多:
<head>
<title>Html</title>
<script src="some_path.js"></script>
<script src="some_path_2.js"></script>
</head>
【问题讨论】:
-
<head>是一个标签,就像页面中的任何其他标签一样......不需要正则表达式。您可以附加到它 -
既然这不是 DOM 解析而是字符串解析,那么如何避免使用正则表达式,而是解析出字符串呢?一个简单的分词器会创造奇迹。
-
您无法访问 DOM 的上下文是什么?
-
迄今为止最好的解决方案。 var wholeHtml = ""; wholeHtml.replace(/(
)()/g, '$1 -
@AntonAleksandrovichTrofimenk - 这真的不是最好的解决方案,它依赖于在其他标签之后立即存在一个元标签,它正在替换完全不必要的整个反向引用。我会看看迈克尔的解决方案
标签: javascript html