Перейти к содержимому


Фото
* * * * * 1 Голосов

Lua помощь


  • Please log in to reply
63 ответов в этой теме

#61 Hedgehog_57

Hedgehog_57

    Newbie

  • Posters
  • 46 Сообщений:

Отправлено 09 Январь 2020 - 18:42

Спасибо, попробую. Но оно не ругается на эту регулярку. Она работает нормально и почта ходит без пробем. Оно так ругается, когда приходит почта с адресов вида

 

870-LBG-312.0.932907.0.0.217968.9.56903619@mktomail.veeam.com

OLSRV.PART.EU.00.RU.TPR.LIS.CS.T01.MPS.SD.WB@css.one.microsoft.com  

338-EJP-431.0.244443.0.0.113867.9.5025945@eu-lon-188.mktomail.com

021-WLD-815.0.36948.0.0.18209.9.1329028-127-324@bounce.tmforum.org

564-VFR-008.0.360042.0.0.33067.9.46998550@bounce.s.solarwinds.com

 

Скорее всего ругается на эту регулярку:

(.*\.)*ibm\.com

Я бы попробовал переписать её как-нибудь так:

@([a-z0-9-]+\.)*ibm\.com$

Не проверял, ничего не гарантирую.



#62 Dmitry Mikhirev

Dmitry Mikhirev

    Member

  • Dr.Web Staff
  • 424 Сообщений:

Отправлено 09 Январь 2020 - 18:45

оно не ругается на эту регулярку

Как это? Вот же:

Cannot call regex function: The complexity of matching the regular expression exceeded predefined bounds.

Если Вы показали не всё содержимое white-from.regex, возможно, проблема в другой строке. Или в нескольких.


Сообщение было изменено Dmitry Mikhirev: 09 Январь 2020 - 18:47


#63 Hedgehog_57

Hedgehog_57

    Newbie

  • Posters
  • 46 Сообщений:

Отправлено 09 Январь 2020 - 18:57

Я изменил на ваш вариант и оно заработало. Спасибо.

В качестве примера я привел все три варианта записей, что есть у меня в файле. Адрес, домен и поддомены. У меня было 4-ре записи вида поддомены. Похоже, что оно упиралось именно в них. Но в явном виде, какая именно строка не устраивает regex не говорится.

 

Я не понял до конца. Через эту регулярку отлично проходит почта. Упиралась только та, что имела такие странные длинные адреса. 

 

 

 

оно не ругается на эту регулярку

Как это? Вот же:

Cannot call regex function: The complexity of matching the regular expression exceeded predefined bounds.

Если Вы показали не всё содержимое white-from.regex, возможно, проблема в другой строке. Или в нескольких.

 



#64 Dmitry Mikhirev

Dmitry Mikhirev

    Member

  • Dr.Web Staff
  • 424 Сообщений:

Отправлено 09 Январь 2020 - 19:13

В этих адресах много фрагментов, разделённых точками. Выражение (.*\.)* очень долго ходит по ним взад-вперёд, пытаясь найти совпадение. В том выражении, которое предложил я, во-первых, ищется совпадение только непосредственно после @ (а эти куски с точками как раз до @), во-вторых, исключаются символы, невалидные для имён доменов, и в-третьих, дополнительный якорь $ фиксирует конец совпадения концом строки. В принципе, для указанных Вами адресов хватило бы просто добавления @ в начало, но проблема могла бы возникнуть снова с адресами другого вида. Зафиксировать начало (@) и конец ($) совпадения — более оптимальный вариант, не говоря о том, что под Вашу регулярку мог подойти адрес вида something.ibm.com123@example.com или anything@ibm.common.example.org.

P. S. Главное — проверьте, проходят ли письма, для которых эта регулярка изначально писалась. У меня нет уверенности, что совпадение проверяется для извлечённого из заголовка  From адреса, а не для всего его содержимого.


Сообщение было изменено Dmitry Mikhirev: 09 Январь 2020 - 19:22



Читают тему: 0

0 пользователей, 0 гостей, 0 скрытых