Google RE2

初学者の箸置 - RE2を試してみた。

PCREが、途中でマッチングに失敗して終了する(死ぬと書いてあるが、死んだわけではないだろう)という点について。
俺の記憶が確かなら、PCREはマッチング処理の中で特定の関数が呼ばれる度にカウンタがインクリメントされていって、それがある値を超えるとマッチングを諦めてリターンするという実装になっていた。今は知らないが、数年前に見たときはそうだった。
これは、ここで使われているパターンのように、繰り返しの組み合わせが指数関数的に増えていくケースに対処するためだと思われる。それに気付いたときは、ちょっとインチキ臭い実装という気もしたが。