Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Single Post  Topic: Примеры регулярных выражений 
Author Message
yozhik



PostPosted: Mon Jul 20, 2026 14:38    Post subject: Reply with quote

Orion9 wrote:
она всегда будет ему известна

Но тогда придётся макрос каждый раз редактировать )) А это неудобно.

Добавлено спустя 32 минуты:

Orion9
болван wrote:
избыточный бэктрекинг (откаты движка), который вызывают ленивые квантификаторы (+? и *?)

Это существенно только при обработке гигантских массивов (гиг текста). Или для подсветок (как в AkelPad), которые в фоне постоянно шуруют. В остальных случаях речь о микродолях секунды.

болван wrote:
(?i)\b(button|cmd|param|path|menu|iconic)(\d++)=(.*)

(?i) — лучше уточнить, что точка не захватывает перенос строки (?i-s), а то всякое бывает (общие настройки поменял временно и забыл).

(\d++) — одного плюса скорее всего хватит (\d+), т.к. обычно множители жадные по умолчанию (в справках об этом упоминают). В этом именно случае ++ или + большой разницы не даст, но вообще лучше не привыкать к ++, они иногда неожиданные сюрпризы подкидывают.

болван wrote:
Дело в том, что TRegExpr... имеет упрощенный, классический Perl-подобный синтаксис

Не понятно, «упрощенный» по сравнению с чем? В большинстве редакторов синтаксис даже до Perl не дотягивает.

болван wrote:
Дело в том, что TRegExpr... В ней отсутствует поддержка сверхжадных (possessive) квантификаторов

Неправда. Устаревшие сведения. Поддерживает, хоть и с ограничениями, но процентов 90 необходимости покрывает. И \d++ поддерживает точно.

А вообще, чем на болванов время тратить, лучше книжку Джеффри Фридла почитать. А после этого уже и с болванами работать ))
_________________
Amo ergo sum
View user's profile Send private message


Powered by phpBB © 2001, 2005 phpBB Group