Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Общие вопросы > Как оптимизировать регулярки |
Автор: ViperYa 23.8.2010, 08:58 | ||
Привет всем. Подскажите, можно ли упростить данное регулярное выражение: ^[^a-zа-яё]+ (Вытаскивает все небуквенные символы в начале предложения) [^a-zа-яё)]+$ (Вытаскивает все небуквенные символы, кроме закрывающей скобки в конце предложения) И еще: Есть List<string> Words со словами. Нужно подчеркнуть все все вхождения слов коллекции в тексте. Подскажите, как будет быстрее по скорости так:
или если в регулярку записать все слова через "|" и весь текст прогнать по регулярке..? |
Автор: ИванМ 23.8.2010, 15:10 |
ViperYa, вы ошиблись разделом. Ищите раздел про .NET и c# |
Автор: jonie 23.8.2010, 18:19 |
ViperYa, для вашей задачи решулярки вообще не нужны. Например для первой регулярки: Вам надо пробежаться по String-у посимвольно и каждый символ сравнивать на попадание в два диапазона ['a';'Z'] и ['а','Я'] (в кодировке UCS-2 (aka урезанная utf16) указанные символы идут подряд). Вот и всё. Насчет linq: используйте String.FindFirstOf() в цикле, релугярка тут тоже не нужна. |