为谷歌代码prettify编译正则表达式
Compiling regular expressions for google-code-prettify
我们正在开发谷歌代码pretify的扩展,它为网页上的源代码着色。我们在Mathematica中有一个很长的关键字列表(大约4000个),虽然性能仍然很好,但我想知道我是否可以加快速度。
我们的关键字列表的正则表达式如下
var keywords = 'AbelianGroup|Abort|AbortKernels|AbortProtect|Above|Abs|Absolute|'
AbsoluteCurrentValue|AbsoluteDashing|AbsoluteFileName|AbsoluteOptions|'
AbsolutePointSize|AbsoluteThickness|AbsoluteTime|AbsoluteTiming|AccountingForm';
new RegExp('^(?:' + keywords + ')''b')
这样的或-ed正则表达式在编译时能更快吗?首先编译它有意义吗?因为谷歌代码prettify是一个在服务器上运行的JavaScript。我不知道这个脚本是否每次加载网页时都是新加载的。在这种情况下,编译它可能不值得花费太多开销。
google-code-prettify
在客户端上运行(它是一个脚本;浏览器从服务器请求源)- 创建
RegExp
对象会在运行时编译它
换言之,保持原样。
相关文章:
- java.net和javascript之间正则表达式的差异
- Grunt匹配正则表达式
- 不同浏览器中的空白字符正则表达式行为
- 正则表达式在字符串中找到base64
- 子字符串/正则表达式以获取字符串中保存的 SRC 值
- 调用正则表达式匹配的函数
- 使用正则表达式评估电子邮件地址时出现性能问题
- Javascript 正则表达式 : ^[^/s/]+[a-z]{1,}[0-9]*[-_]*[^/][
- JavaScript正则表达式文本与RegExp对象
- 正则表达式只允许 x 个整数
- 使用正则表达式将输入格式设置为单字符逗号、单字符逗号等
- 改进用于验证付款金额的正则表达式
- 正则表达式与数字中的第二个点匹配
- 键按正则表达式以查找具有负值的小数
- 一个正则表达式,用于从JS中的HTML标记中删除id、样式和类属性
- 将po-box javascript正则表达式转换为c#regex
- 在 Node.js 中编译正则表达式规则
- 为谷歌代码prettify编译正则表达式
- 与toString方法相比,使用正则表达式在javascript中进行函数反编译的优势
- V8会自动缓存编译好的正则表达式吗?