如何在JavaScript中实现html语法高亮显示?

时间:2013-12-03 00:46:33

标签: javascript html regex

我可以使用正则表达式吗?如果是,我如何用span标签替换每个匹配?如果没有我可以使用的是什么?一个包含所有可能的html标签的字典?这仅用于教育目的,因此请不要将我引用到JavaScript库。

1 个答案:

答案 0 :(得分:0)

它与您在任何其他语言中进行语法突出显示的方式类似。通常,您将实现将html代码段分解为单个标记的标记生成器(例如,使用正则表达式),然后将样式规则应用于标记。

我会看Prism。它的代码非常简单。核心在这里:

https://github.com/LeaVerou/prism/blob/gh-pages/components/prism-core.js

这包含标记化和突出显示功能。 HTML / XML的正则表达式在此文件中:

https://github.com/LeaVerou/prism/blob/gh-pages/components/prism-markup.js