LINUX.ORG.RU

elisp, регэкспы


0

1

В

(looking-at ".*\{[ \t]*\\(//.*\\|/\\*.*\\*/[ \t]*\\)*$")

надо добавить учёт: do if() while() for() switch() case with()

каждый из элементов даст примерно такой же длинны регэксп, как приведённый выше. Есть ли какая-нибуде разница в скорости работы и, соответственно, рекомендация как делать, между тем, что засунуть всё в один длинный регэксп или сделать ещё семь (looking-at ...)? Чисто логически один длинный, наверно, лучше?

п.с. ппц регекспы здесь изуродовали слэшами, вообще не читаемые.

★★

Последнее исправление: Reaper (всего исправлений: 1)

в скорости работы

Думаю нет.

Я б сделал список регекспов, и прошелся бы по нему с помощью mapcar looking-at. Будет читаемо, и не надо 7 раз писать looking-at, и в дебаге проще будет.

(setq regexes '("regex1" "regex2" ...))
(mapcar 'looking-at regexes)
provaton ★★★★★
()
Ответ на: комментарий от provaton

О, идеально, сеньк. Один длинный был ппц нечитаемым.

Reaper ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.