iNils: Эта тема выделилась из темы: Округление числа с двумя запятыми
Хммм ну что касается скорости регулярных выражений, то это очень нетривиальная вещь. Во первых бывают разные механизмы регулярок: дка и нка ((не)детерминированный конечный автомат). дка всегда, независимо от написания выражения работает очень быстро, но уступает нка в возможностях. нка же очень зависит о самого выражения, используемых в нём конструкций, например (н|к|а) будет работать в разы медленнее чем [нка] и т.д. , а дка это без разницы, он один раз строит карту символов по которой и бегает. Зато нка легко поддерживает возможности ссылок, сохранения участков совпадения, опережающих и ретроспективных проверок и другие няшечки, без которых некоторые задачи ни как не решить. Сам нка делится ещё на классический нка, который при первом совпадении выдаёт результат. И на POSIX нка, который продолжает перебирать текст пока не найдёт самое длинное совпадение, естественно он работает ещё медленнее чем нка. Так-же кажется существуют гибридные механизмы, которые и рыбку съесть хотят и работать быстро, не знаю насколько успешно. В AS 3.0 используется обычный нка без извращений.
Мораль: если регулярка работает медленно, это вы виноваты, а не регулярка.