Zum Hauptinhalt Zur Navigation

Google gibt Bibliothek zur effizienten Suche frei

C++-Bibliothek RE2 sucht zeitlich linear nach regulären Ausdrücken. Google hat die C++-Bibliothek RE2 zur schnellen Suche nach regulären Ausdrücken unter der BSD-Lizenz freigegeben. Die Bibliothek findet bei Google vor allem bei der Suche im Onlinedienst Code Search Labs sowie bei der Suche über verteilte Daten mit Sawzall und Bigtable Verwendung.
/ Jörg Thoma
43 Kommentare News folgen (öffnet im neuen Fenster)

Mit der C++-Bibliothek RE2 wird, anders als bei herkömmlichen Implementierungen, zeitlich nicht exponentiell in einer wachsenden Menge anhand von regulären Ausdrücken gesucht, sondern strikt linear. Dabei kommt die Automatentheorie(öffnet im neuen Fenster) zur Anwendung. Damit soll vermieden werden, dass pathologische Suchanfragen(öffnet im neuen Fenster) die Suchzeit unnötig in die Höhe treiben und dabei Ressourcen belegen.

Zudem wurde bei RE2 der Speicher, den einzelne Stacks belegen, begrenzt. Die Begrenzung verhindert nicht nur Stack-Überläufe und somit potenzielle Serverabstürze, sondern ermöglicht auch die Verwendung von RE2 in Multithread-Anwendungen. Weitere Details zu der RE2-Bibliothek liegen auf der Webseite des Projekts zur Einsicht(öffnet im neuen Fenster) . Dort liegt auch der Quellcode zum Download bereit.


Relevante Themen