GNU/Linux >> Znalost Linux >  >> Linux

C++:jakou knihovnu regulárních výrazů bych měl použít?

Děkujeme za všechny návrhy.

Dnes jsem vyzkoušel pár věcí a s těmi věcmi, o které se snažíme, jsem se rozhodl pro nejjednodušší řešení, kdy nemusím stahovat žádnou jinou knihovnu třetí strany. Nakonec jsem #include a použil standardní C POSIX volání regcomp() a regexec(). Ne C++, ale tohle se ukázalo jako nejjednodušší.


Boost.Regex je velmi dobrý a má se stát součástí standardu C++0x (je již v TR1).

Osobně mi přijde Boost.Xpressive mnohem hezčí na práci. Je to knihovna pouze pro záhlaví a má některé pěkné funkce, jako jsou statické regexy (regexy kompilované v době kompilace).

Aktualizace: Pokud používáte kompilátor kompatibilní s C++11 (gcc 4.8 NENÍ!), použijte std::regex, pokud nemáte dobrý důvod použít něco jiného.


Linux
  1. Distribuovaná databáze NoSQL Elasticsearch – co to je a měli byste ji používat?

  2. Co si mám vybrat:GTK+ nebo Qt?

  3. Co bych měl použít místo windows.h v Linuxu?

  1. Proč by se měl v Bash vyhnout eval a co bych měl místo toho použít?

  2. Jak používat dos2unix?

  3. Použijte knihovnu C ve Swift na Linuxu

  1. Jaký je trik LD_PRELOAD?

  2. Co je soubor .so.2?

  3. Jaké je použití $# v Bash