Регэкспы в Macro{key: Topic is solved

Столкнулись с проблемой в использовании макросов? Здесь можно получить помощь.
Post Reply
buniak_a_h
Posts: 518
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 55 times
Been thanked: 10 times
Contact:

Регэкспы в Macro{key:

Post by buniak_a_h » Fri 18 May, 2018 23:00

Поясните, пожалуйста, логику.
Мне нужно повесить макрос на любой символ слова (то, что в шаблонах поиска обозначается %w плюс подчёрк.) Естественно было би написать так:
key="/[%w_]/"; -- Bad!
или так:
key="/%w _/"; -- Bad!
Увы, не работает. Пришлось писать тупо перечислением:
key="/[A-Z_0-9]/"; -- Good!
Last edited by HaRT on Sat 19 May, 2018 01:57, edited 1 time in total.
Reason: Исправлен Заголовок Темы

User avatar
HaRT
Moderator
Posts: 8475
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 74 times
Been thanked: 135 times

Регэкспы в keys

Post by HaRT » Sat 19 May, 2018 00:03

buniak_a_h wrote:
Fri 18 May, 2018 23:00
key="/[%w_]/"; -- Bad!
А в чём выражается это “Bad!”?
20.2 – Patterns wrote:the char-set '[%w_]' matches both alphanumeric characters and underscores
Также у меня есть свидетельство, что в key используется именно Lua pattern.
Last edited by HaRT on Sat 19 May, 2018 01:47, edited 1 time in total.
Reason: Вычеркнуто неверное
Фар есть инструмент, а не нянька. © 2009 DrKnS

buniak_a_h
Posts: 518
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 55 times
Been thanked: 10 times
Contact:

Регэкспы в keys

Post by buniak_a_h » Sat 19 May, 2018 01:28

HaRT wrote:
Sat 19 May, 2018 00:03
А в чём выражается это “Bad!”?
Если в описании макроса указать keys так, как указано в помеченных "Bad!" строках, то макрос просто не вызывается. Даже condition не вызывается. Пример - тут, строки 197, 198 скрипта
HaRT wrote:
Sat 19 May, 2018 00:03
20.2 – Patterns писал(а):
the char-set '[%w_]' matches both alphanumeric characters and underscores
Собственно, это и надо. Заменил %w на A-Z0-9 - и всё заработало...
Last edited by buniak_a_h on Sat 19 May, 2018 01:30, edited 1 time in total.

User avatar
HaRT
Moderator
Posts: 8475
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 74 times
Been thanked: 135 times

Регэкспы в keys

Post by HaRT » Sat 19 May, 2018 01:43

buniak_a_h wrote:
Sat 19 May, 2018 01:28
макрос просто не вызывается
Подтверждаю. А вот с таким срабатывает: key='/[\\w_]/';. Получается, там обычный Фар-регэксп, а не Lua pattern.
Фар есть инструмент, а не нянька. © 2009 DrKnS

Post Reply

Return to “Нужна помощь”