Не работает регулярка в БАС
-
Очень часто сталкиваюсь с такой ситуацией что регулярные выражения хорошо работающие в Зеннопостере, не работают в БАС. Обычно как-то удавалось решить проблему. Но на этот раз уже выбился из сил. Помогите кто может!)
Задача следующая. Есть текст где встречаются доменные имена. Так вот, их нужно спарсить в список. Использую такую регулярку
/([0-9a-z-]+.)(net|com|org|info|biz|mobi)/
Но ничего не парсит, выдает ошибку SyntaxError: Parse error Номер строки:2 Во время выполнения скрипта бла бла бла...
Тестовый шаблон прилагаю 0_1511714282231_test_pars_domains.rar
-
тестовый не смотрел, но проверь так:
[\da-z\-]+\.(net|com|org|info|biz|mobi)регулярки с зено и не должны работать в БАС, грубо говоря. Потому что там .NET , а тут JS
-
@out said in Не работает регулярка в БАС:
тестовый не смотрел, но проверь так:
[\da-z\-]+\.(net|com|org|info|biz|mobi)регулярки с зено и не должны работать в БАС, грубо говоря. Потому что там .NET , а тут JS
Да в курсе. Немного шаманил и обычно помагало)
@noask said in Не работает регулярка в БАС:
Тип string нужно указать для строки с регуляркой. Еще возьмите все выражение в скобки, чтобы доменная зона не обрезалась
Спасибо! Заработало! Действительно STRING ставишь и все в скобки и работает) По скобкам отдельная благодарность, сам бы не допер))
-
@Gang Обновил модуль регулярных выражений.
Перевел движок с js на с++, это означает, что теперь регулярки поддерживают lookbehind, unicodeproperties и многое другое.
Если говорить просто, то регулярные выражения теперь можно копировать с другого софта без доработки.Действие Первое вхождение теперь может получать все группы в разные переменные. Нужно просто записать переменные через запятую(как в действии Парсить строку).
Действие Извлечь все данные может получать конкретную группу, для этого ей нужно присвоить имя result.
Появилось действие Заменить строку через регулярки.
К каждому действию добавлены примеры и описание.
Новую версию модуля можно попробовать скачав по ссылке RegularExpression.zip или подождав новую версию БАС.
