3

我正在尝试将更强大的正则表达式库放入 javascript 中。我找到的唯一解决方案是使用Emscripten将Oniguruma 正则表达式库编译为 javascript

我已经安装了 Emscripten 并用他们的小测试脚本对其进行了测试,还下载了 oniguruma 源代码,但仍然不知道接下来应该做什么。

有熟悉 emscripten 的人吗?

4

2 回答 2

1

当您使用Emscripten时,从 C/C++ 构建/编译的一般方式保持相似。更改的步骤是您不使用例如gcc 编译器,而是使用Emscripten 编译器

也就是说,有一个普遍的问题是您是否熟悉C/C++以及更具体的autotools(这似乎是Oniguruma使用的构建工具)。如果你不是,你可能很难理解需要做什么以及如何做。

最后我检查了Emscripten不支持Libtool,因此使用autotools构建可能会失败。不过,请随时在Emscripten IRC 频道询问,这是否确实不可能。

我能想到的另一种方法是使用自动工具生成Makefile,然后为Emscripten程序编写自定义目标。请注意,这适用于熟悉make cruft 的高级用户。

如果这些步骤对您来说很费力,那么您可能应该看看 Javascript 库是否足以满足您的需求。

于 2012-11-09T10:28:49.377 回答
0

一个更现实的方法是使用http://xregexp.com。它向 RegExps 添加了更多功能,并将它们编译为 JavaScript 更有限的 RegExp 方言,因此它可以获得最佳功能和性能。使用 emscripten 编译正则表达式库的性能不太可能足以在生产中使用。对于某些用途,emscripten 非常出色,但在这种情况下,开销似乎不值得。

XRegExp 的作者甚至有一篇关于lookbehinds 的文章http://blog.stevenlevithan.com/archives/javascript-regex-lookbehind

于 2012-11-08T16:11:02.370 回答