Помогите с регуляркой!



  • Вытягиваю регуляркой код, все правильно применяю ее в регулярном выражении код не вводит,почему ? Скриншот 11-03-2020 17_17_50 (1).png



  • @gervalddenis said in Помогите с регуляркой!:

    Вытягиваю регуляркой код, все правильно применяю ее в регулярном выражении код не вводит,почему ?

    Скорее всего текст, к которому вы применяете регулярку в BAS отличается от этого



  • То есть нужно составлять регулярку из текста в каком виде он записывается в переменную ?



  • Почему тогда он по другому записывается?



  • @gervalddenis said in Помогите с регуляркой!:

    То есть нужно составлять регулярку из текста в каком виде он записывается в переменную ?
    Почему тогда он по другому записывается?

    По другому относительно чего? Регулярное выражение нужно составлять именно по тому тексту, к которому оно будет применяться.



  • Я не понимаю вас, я разве не так делаю? Мне с этого текста и нужно , этот текст как я понял и должен записываться из письма, я его и применяю именно с письма. Я же приложил скрин.



  • @gervalddenis said in Помогите с регуляркой!:

    Я не понимаю вас, я разве не так делаю? Мне с этого текста и нужно , этот текст как я понял и должен записываться из письма, я его и применяю именно с письма. Я же приложил скрин.

    Скрин вы приложили текста, с которым ваша регулярка работает. Выведите содержимое переменной в лог и откройте файл лога, сразу увидите в каком виде у вас текст письма



  • Ну да я видел там и иероглифы есть и по другому текст записан, я поэтому и спросил вас мне нужно составлять регулярку именно с того текста как он вывелся в лог с переменнной ?



  • @gervalddenis said in Помогите с регуляркой!:

    Ну да я видел там и иероглифы есть и по другому текст записан, я поэтому и спросил вас мне нужно составлять регулярку именно с того текста как он вывелся в лог с переменнной ?

    Прочтите ещё раз, но медленно:
    Регулярное.выражение.нужно.составлять.по.тексту.к.которому.оно.будет.применятся.



  • @gervalddenis said in Помогите с регуляркой!:

    Ну да я видел там и иероглифы есть и по другому текст записан, я поэтому и спросил вас мне нужно составлять регулярку именно с того текста как он вывелся в лог с переменнной ?

    Ни в коем случае! Просто используйте регулярки 2.0 версии, в них уже встроен алгоритм машинного обучения и они буквально за вас сами додумывают что вы хотите, даже если вы текст перепутали. Просто не парьтесь об этом, прогоните неправильную регулярке 10к раз и она самообучится, тем самым вы поможете всем нам, т.к. эта информация отправляется в коллективное облако (общее для всех пользователей регулярок 2.0), это как коллективное бессознательное чтобы вам было проще понять. Если все будут такие же сознательные граждане как вы и радеть за общее, то мы скоро придем к тому (наверное), что поле для регулярки можно будет оставлять пустым, оно само будет там все парситься, текст правильный-неправильный, им вообще похеру будет посути. Удачи



  • Я не пойму к тексту я что не текст применяю разве? Меня запутали всего я сто раз эти регулярки делал. как мне код то вытянуть я так и не понял толком.



  • @gervalddenis Попробуйте так

    :\ (\d{4,4})
    


  • @romanbiz said in Помогите с регуляркой!:

    @gervalddenis Попробуйте так

    :\ (\d{4,4})
    

    А зачем вы экранировали пробел и для чего указали диапазон от 4 до 4? :)



  • В начале темы я выложил текст письма из которого мне нужно вытянуть код, регуляркой я его составил и код вытягивается в конструкторе, мне говорят что надо применять к тексту, так я так и делаю применяю к тексту, но она не срабатывает, кто нибудь может внятно объяснить почему регулярка должна другой, и почему конструктор мне составляет верно а бас не вытягиват код??
    Этот конструктор на базе баса и сделан. Когда я вывожу с переменной тему письма там идут еще много разных символов, я так и не понял какая регулярка должна применяться.



  • Вот это письмо он мне выводит с MAIL BODY - [763487076] [22:42:22] Поток №1 : From: noreplay@wmrok.com noreplay@wmrok.com To: tokmaknuraliev19842402@rambler.ru Subject: ������������� ����������� �� www.wmrok.com Return-Path: php@wmrok.com Delivered-To: tokmaknuraliev19842402@rambler.ru Received: from 1vm0011.prod.mail.rambler.tech ([10.5.5.14]) by 0vm0002.prod.mail.rambler.tech with LMTP id 0HbvHlnMY16rfQAAFNO7fQ (envelope-from php@wmrok.com) for tokmaknuraliev19842402@rambler.ru; Sat, 07 Mar 2020 16:31:21 +0000 Received: from mx4.mail.rambler.ru ([10.5.5.14]) by 1vm0011.prod.mail.rambler.tech with LMTP id 6FveHlnMY148WQAA6lHQPQ (envelope-from php@wmrok.com) for tokmaknuraliev19842402@rambler.ru; Sat, 07 Mar 2020 16:31:21 +0000 Received: from autorest.ru (unknown [89.208.145.156]) by mx4.mail.rambler.ru (Postfix) with ESMTP id 62A69320359 for tokmaknuraliev19842402@rambler.ru; Sat, 7 Mar 2020 19:31:21 +0300 (MSK) Received: from UNKNOWN (UNKNOWN [89.208.145.156]) by resmtp1.mail.rambler.ru (resmtp/Rambler) with ESMTP id VL1K9vgh; Sat, 7 Mar 2020 16:31:21 +0000 Received: by autorest.ru (Postfix, from userid 33) id CAA448327; Sat, 7 Mar 2020 19:32:29 +0400 (MSK) Reply-To: noreplay@wmrok.com Content-type: text/plain; charset="windows-1251" Message-Id: 20200307153229.CAA448327@autorest.ru Date: Sat, 7 Mar 2020 19:32:29 +0400 (MSK) X-Spam: yes ������������! �� ������������������ �� http://wmrok.com , ��� ��������� �������� ������� reg-���: 8617 ����� ������� � �������! -------------------------------------------- ��� �����: tokmaknuraliev19842402@rambler.ru ��� ������: ztyY6blFmRg ��� pin-���: 9793 -------------------------------------------- � ���������, www.wmrok.com



  • @gervalddenis said in Помогите с регуляркой!:

    В начале темы я выложил текст письма из которого мне нужно вытянуть код, регуляркой я его составил и код вытягивается в конструкторе, мне говорят что надо применять к тексту, так я так и делаю применяю к тексту, но она не срабатывает

    К тому тексту, который вы приложили, регулярка срабатывает и возвращает верный результат (да, я перепечатал текст сообщения со скриншота):
    a7948023-c532-47e0-b323-c2ce423a45d3-изображение.png
    f89d8170-a69a-4151-aded-9e83df785a87-изображение.png
    79b26743-bf92-42ab-ac7e-fe43f79d3c41-изображение.png

    тестовый скрипт

    кто нибудь может внятно объяснить почему регулярка должна другой, и почему конструктор мне составляет верно а бас не вытягиват код??

    Если регулярка в конструкторе работает, а в BAS нет, значит текст в переменной BAS, к которому вы применяете регулярку отличается от того текста, который указали в конструкторе.

    Этот конструктор на базе баса и сделан.

    Это веб страница https://bablosoft.github.io/RegexpConstructor/ , о какой базе речь?

    Когда я вывожу с переменной тему письма там идут еще много разных символов, я так и не понял какая регулярка должна применяться.

    Напишу третий раз. Регулярное выражение должно составляться на том тексте, к которому она будет применяться.


    Опишу другими словами, вы зашли в браузер, открыли текст письма и скопировали его в конструктор, создали регулярное выражение. Зашли в BAS, через imap получили письмо и думаете, что в переменной будет точно такой же текст, как и в браузере. Но это не ТАК!. В переменной тела письма будут и технические данные и весь текст в html обрамлении, ну то есть со всякими тегами и прочим.
    Дак вот, в коде этот текст может быть записан как нибудь так:

    <p class="mega-text">Вы зарегистрировались на <a href="http://wmrok.com/rel?faq=asdl&stupid=true&az=zed">http://wmrok.com</a> , для активации аккаунта введите reg-код:</p><span class="number">8617</span>
    

    и вот к этому тексту ваша регулярка не подойдёт.



  • @gervalddenis said in Помогите с регуляркой!:

    Вот это письмо он мне выводит с MAIL BODY

    На будущее, для прикладывания кода используйте кнопочку
    93d56cc5-7188-4195-8da1-f3a0e41cb0cd-изображение.png
    что бы форум не удалил какие нибудь символы из текста посчитав их оформлением.

    Используйте такую регулярку:

    reg-.*?: (\d{4})
    


  • Я об этом и говорил вам, что в переменную записывает символы иероглифы всякие и спрашивал регулярку мне составлять из текста как в переменную записывается а не так как в письме, спасибо, я так и понял уже что так делается. Спасибо за помощь.



  • @Fox в результате 4 символа, а пробел мне экранировал конструктор регулярок.



  • @romanbiz said in Помогите с регуляркой!:

    @Fox в результате 4 символа, а пробел мне экранировал конструктор регулярок.

    У вас диапазон от 4 символов, до 4 символов {4,4}, хотя можно было оставить просто {4}. Я просто спросил для чего это.


Log in to reply
 

  • 13
  • 2
  • 2
  • 3
  • 2
  • 6
  • 28
  • 5