Кто-нибудь использовал RE2 в приложении C #? - PullRequest
2 голосов
/ 03 января 2011

Я начал поиски достойного движка регулярных выражений. Это привело меня к этой странице Тест Regex Libraries . Я решил использовать RE2 , потому что он, кажется, лучший двигатель FSA в этом списке.

Мое окончательное приложение будет построено с использованием WPF в C #. Библиотека регулярных выражений будет больше использоваться в пакетном режиме. Однако большая часть другой бизнес-логики будет написана на C #, и поэтому я планирую использовать библиотеку RE2 через C #.

Если кто-то делал что-то подобное или просто использовал RE2 через C # и у него есть советы или указания, пожалуйста, сообщите мне об этом.

Спасибо.

Ответы [ 2 ]

1 голос
/ 23 июля 2014

Я использовал RE2 .Net в приложении, и позвольте мне сказать вам, что это лучший инструмент фильтрации регулярных выражений.Это дало мне более чем 10-кратное улучшение производительности в большинстве случаев.

Вы можете скачать исходный код на C ++ и библиотеки .net здесь, https://github.com/0xcb/Re2.Net

Хотя это зависит от ваших требований.Если у вас есть текстовый файл, и если вам нужно отфильтровать файл, используя список регулярных выражений, я бы порекомендовал GREP.Если вы пытаетесь отфильтровать большой набор данных, используя огромный набор регулярных выражений, в которых важна производительность, то вы можете использовать RE2.Но остерегайтесь ограничений в синтаксисе, которые перечислены в https://code.google.com/p/re2/wiki/Syntax.

1 голос
/ 04 января 2011

Да, я с Даниэлем в этом. , , прежде чем я пойду на охоту от какой-то мошеннической реализации Reg Exp. , , Я бы позаботился о том, чтобы я предварительно компилировал регулярные выражения, где мог, чтобы все жадные параметры и т. Д. Были установлены правильно и чтобы само выражение reg не было «тупым» в некотором роде. , .

Я подозреваю, что замена стандартного пакета не является оптимальным решением. Конечно, не зная больше о ваших требованиях, трудно знать наверняка. , , но если влияние пакета RegExp настолько велико на вашу производительность, я бы сначала посмотрел на самих RegExp.

Frank

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...