RE2 is a fast, safe, thread-friendly alternative to backtracking regular expression engines like those used in PCRE, Perl, and Python.

GoogleからC++向けの正規表現ライブラリ「RE2」が発表された。Googleが自社サービスを提供するために活用しているC++正規表現ライブラリで、PerlやPCREの正規表現のほとんどに対応しているほか、POSIXモードも提供されている。入力データのサイズに依存せずに固定サイズのメモリで処理が可能で、高速で安全、マルチスレッドでの動作に適しているという特徴があるという。

従来の実装では、大量にデータを処理する場合に指数関数的に処理時間が増えるという問題があったという。またスタックの境界チェックミスからスタックオーバーフローが発生してサービスがクラッシュすることもあたっという。RE2はこれら問題を解決することを目指して実装されたライブラリだと説明されている。

RE2はBSDライセンスのもとで提供されており、RE2: a principled approach to regular expression matching - Google Open Source BlogでRuss Cox氏が説明している内容によれば、そのままPCRE C++バインディングと入れ替えて利用できるとされている。