我们正在开发 google-code-prettify 的扩展,它可以对网页上的源代码进行代码着色。我们在 Mathematica 中有一个很长的关键字列表(大约 4000 个),虽然性能仍然非常好,但我想知道我是否可以加快速度。
我们的关键字列表的正则表达式如下所示
var keywords = 'AbelianGroup|Abort|AbortKernels|AbortProtect|Above|Abs|Absolute|\
AbsoluteCurrentValue|AbsoluteDashing|AbsoluteFileName|AbsoluteOptions|\
AbsolutePointSize|AbsoluteThickness|AbsoluteTime|AbsoluteTiming|AccountingForm';
new RegExp('^(?:' + keywords + ')\\b')
这样的 或 正则表达式在编译时能否变得更快?首先编译它是否有意义,因为 google-code-prettify 是在服务器上运行的 JavaScript。我不知道每次加载网页时是否都会重新加载此脚本。在这种情况下,编译它可能不值得开销。
最佳答案
google-code-prettify
在客户端运行(它是一个脚本;浏览器从服务器请求源代码)。- 创建
RegExp
对象会在运行时编译它。
换句话说,保持原样。
关于javascript - 为 google-code-prettify 编译正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9052140/