我想做一个代码高亮的功能,但是我不想创建那些标签(如何实现我自有办法),只要能够知道哪些词高亮就行了
比如下面是 highlight.js
创建的
可能highlight.js
中已经有词法分析这一部分了,不过我展示没有找到
我想做一个代码高亮的功能,但是我不想创建那些标签(如何实现我自有办法),只要能够知道哪些词高亮就行了
比如下面是 highlight.js
创建的
可能highlight.js
中已经有词法分析这一部分了,不过我展示没有找到
今天突然想起这个问题。
highlight是通过词法分析来实现的。只不过词法分析又使用了正则表达式来简化规则。
编译原理里介绍的一般流程
1、先做词法分析,得到一个token列表。
2、再做语法分析,把这个token列表处理成ast。
3、一般的场景就是之后拿ast来做各种骚操作了。
但是对于highlight来说只是语法高亮,那到词法分析这个环节就够了。
8 回答4.6k 阅读✓ 已解决
6 回答3.4k 阅读✓ 已解决
5 回答2.8k 阅读✓ 已解决
6 回答2.3k 阅读
5 回答6.3k 阅读✓ 已解决
4 回答2.2k 阅读✓ 已解决
4 回答2.8k 阅读✓ 已解决
我一下就找到了呢,但是
highlight.js
貌似不是 ast 分析,而是很多个正则匹配。js 的:https://github.com/highlightj...
所有的在这个文件夹里:https://github.com/highlightj...