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

Поддержка
  • Тело письма:

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <!--[if !mso]><!--><meta http-equiv="X-UA-Compatible" content="IE=edge"/><!--<![endif]--> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="format-detection" content="telephone=no"> <meta name="format-detection" content="date=no"> <meta name="format-detection" content="address=no"> <link href="https://fonts.googleapis.com/css?family=Roboto:400,500,700,300" rel="stylesheet" type="text/css"> </head> <body style="width:100%;margin:0px 0px 0px 0px;background-color: #eeeeee; color: #272829;font-family: 'Roboto',sans-serif;"> <style type="text/css"> body{margin:0;padding:0;} img{border:0 none;outline:none;text-decoration:none;} a img{border:0 none;} table, td{border-collapse:collapse;} #bodyTable{height:100% !important;margin:0;padding:0;width:100% !important;} body, h1, h2, h3, div, span, p, a { color: #000000; font-family: 'Roboto', Arial; font-size: 16px; word-wrap: break-word; hyphens: auto; -ms-hyphens: auto; } a {color:#3063af;text-decoration: none;} .fb:hover { background-color: #3b5998 !important; } .gp:hover { background-color: #dc4e41 !important; } .tw:hover { background-color: #55acee !important; } @media only screen and (max-width:640px){ table, .tablewrap{margin-top: 0px !important;margin-bottom: 0px !important;} } </style> <!--[if mso]> <style type="text/css"> body{ -ms-text-size-adjust:100%; } .ExternalClass{ width:100%; } .ExternalClass, .ExternalClass p, .ExternalClass span, .ExternalClass font, .ExternalClass td, .ExternalClass div{ line-height: 100%; } .ExternalClass * {line-height: 100%} #outlook a{ padding:0; } table{ mso-table-lspace:0pt; mso-table-rspace:0pt; } img{ -ms-interpolation-mode:bicubic; display: block;} table { width: 580px !important; } </style> <![endif]--> <table align="center" border="0" cellpadding="0" cellspacing="0" style="background-color: #EEEEEE;margin: 0px 0px 0px 0px;padding: 0px 0px 0px 0px;width: 100%;color: #272829;font-family: 'Roboto',sans-serif;"><tr><td align="center" valign="top"> <tr> <td> <table align="center" border="0" cellpadding="0" cellspacing="0" class="tablewrap" style="background-color: #FFFFFF;margin: 20px auto 20px auto;"> <tr height="76"> <td align="center" valign="top"> <table bgcolor="#FFFFFF" border="0" cellpadding="0" cellspacing="0" style="max-width:580px;"> <tr> <td align="center"> <p style="margin: 10px 0px 10px 0px;"> <a href="https://www.pcloud.com/" target="_blank"> <img src="https://d2k5eplsbcgehr.cloudfront.net/ZxU/newsletter/logo/logo.png" width="59" height="56" style="background-color: #FFFFFF; color: #000000;font-size: 14px; text-align: center;" alt="pCloud"> </a> </p> </td> </tr> </table> </td> </tr> <tr> <td align="center" valign="top"> <table bgcolor="#FFFFFF" border="0" cellpadding="0" cellspacing="0" style="max-width:580px;"> <tr> <td align="left"> <p style="margin: 0px 0px 0px 0px;word-break: break-word;"> <img src="https://d2k5eplsbcgehr.cloudfront.net/ZIR/images/mails/header/welcome.png" style="display: block;background-color: #88CC17; color: #FFFFFF;text-align: center;width: 100%;" alt="Welcome to pCloud"> </p> </td> </tr> </table> </td> </tr> <tr> <td align="center" valign="top"> <table bgcolor="#FFFFFF" border="0" cellpadding="0" cellspacing="0" style="max-width:580px;"> <tr> <td align="center"> <p style="margin: 22px 30px 30px 30px;word-break: break-word;font-size: 30px;font-weight: 500;max-width: 100%;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;"> Вы находитесь в одном шаге от того, чтобы получить полноценный и функциональный доступ к своему pCloud аккаунту </p> <p style="margin: 0px 30px 40px 30px;word-break: break-word;line-height: 21px;max-width: 100%;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;"> Привет, добро пожаловать в своё личное Облако. Перед тем, как мы начнём, нам необходимо лишь подтвердить Вашу электронную почту, чтобы Вы могли воспользоваться всеми функциями pCloud. </p> <p style="margin: 0px 30px 30px 30px;text-align: center;-webkit-box-sizing: border-box;max-width: 100%;-moz-box-sizing: border-box;box-sizing: border-box;"> <!--[if mso]> <v:roundrect xmlns:v="urn:schemas-microsoft-com:vml" xmlns:w="urn:schemas-microsoft-com:office:word" href="https://e.pcloud.com/track?url=aHR0cHM6Ly9lLnBjbG91ZC5jb20vPyNwYWdlPXZlcmlmeW1haWwmY29kZT1BcGU4Wmhsc05JbzVick00VG5IRjN4eU1SeHpKVjI0VXk=&token=j7yZApe8Z7ZkZ37qhszudxEkb1HLGWhAxnSLkvPqV" style="height:49px;v-text-anchor:middle;width:289px;" arcsize="7%" strokecolor="#88CC17" fillcolor="#88CC17"> <w:anchorlock/> <center style="color:#ffffff;font-family:sans-serif;font-size:13px;font-weight:bold;">НАЖМИТЕ, ПОДТВЕРДИТЬ СВОЙ EMAIL</center> </v:roundrect> <![endif]--> <a href="https://e.pcloud.com/track?url=aHR0cHM6Ly9lLnBjbG91ZC5jb20vPyNwYWdlPXZlcmlmeW1haWwmY29kZT1BcGU4Wmhsc05JbzVick00VG5IRjN4eU1SeHpKVjI0VXk=&token=j7yZApe8Z7ZkZ37qhszudxEkb1HLGWhAxnSLkvPqV" style="color: #FFF;background-color: #88CC17;text-decoration: none;width: 285px;font-weight: 500;display: inline-block;padding: 13px 0px 13px 0px;border: 2px solid #88CC17;border-radius: 3px;-moz-border-radius: 3px;-webkit-border-radius: 3px;mso-hide:all;"> НАЖМИТЕ, ПОДТВЕРДИТЬ СВОЙ EMAIL </a> </p> <p style="margin: 0px 30px 20px 30px;word-break: break-word;max-width: 100%;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;"> Спасибо, что Вы доверили хранить свои файлы в pCloud! </p> <p style="margin: 0px 30px 30px 30px;word-break: break-word;max-width: 100%;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;"> С наилучшими пожеланиями,<br/>Команда pCloud </p> <p style="margin: 0px 30px 30px 30px;word-break: break-word;max-width: 100%;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;"> P.S. Возникли вопросы? Ответьте на это письмо и получите больше информации </p> </td> </tr> </table> </td> </tr> <tr style="background-color: #DDDDDD;"> <td align="center" valign="top"> <table bgcolor="#DDDDDD" border="0" cellpadding="0" cellspacing="0" style="max-width:580px;"> <tr> <td align="center"> <p style="margin: 27px 20px 25px 20px;color: #555555;font-size: 12px;line-height: 20px;max-width: 100%;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;"> Для того, чтобы обеспечить доставку в Ваш почтовый ящик, пожалуйста, добавьте [team@pcloud.com] в свою адресную книгу.<br/> 2023 © pCloud International AG, 74 Zugers<span></span>trasse St<span></span>r, 6340 Ba<span></span>ar, Swit<span></span>zerland. </p> </td> </tr> </table> </td> </tr> </table> </tr> </td> </table> <img src="https://e.pcloud.com/track?token=j7yZApe8ZkZkZQik83POey3Ja5NYSMg7hD0QEuihX" height="1" width="1"> </body> </html>

    Нужно вытащить это - https://e.pcloud.com/track?url=aHR0cHM6Ly9lLnBjbG91ZC5jb20vPyNwYWdlPXZlcmlmeW1haWwmY29kZT1BcGU4Wmhsc05JbzVick00VG5IRjN4eU1SeHpKVjI0VXk=&token=j7yZApe8Z7ZkZ37qhszudxEkb1HLGWhAxnSLkvPqV

    Составил так:
    word"\shref="([\s\S]{10,300})"\sstyle

    Не вытаскивает(

    Сильно не пинайте, только учусь. Первому, кто поможет закину сотку на баланс.

  • [\s\S]:word"\ href="([\s\S]+?)"\ style="+?[\s\S]
    

    На будущее: убирайте большие тексты или скрины под спойлер.

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

    href

    Как вариант использовать инструмент "Получить подстроку между двумя подстроками"

  • @gurkin4 к сожалению не работает. Использую mail.tm почту

  • @Alpa4in0

    alt text

    Какая почта - абсолютно не имеет значения.

  • @gurkin4 похоже что вы не очень опытный молодой человек. Ваша регулярка не работает. Почта имеет значение. В маил.тм все не так, как в обычной почте. а вот регулярка от Q_Q работает. За что ему огромное спасибо и обещанное мной

  • @Alpa4in0 если важно именно регуляркой то вот

    "(https:\/\/e\.pcloud\.com\/track\?url=.+?)"
    

    141be99c-fee4-4141-a36c-6af0ca1896f0-image.png

  • @Alpa4in0 Не путайте XPath и регулярку. Да и по ходу вы не умеете использовать регулярки.

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

    @Alpa4in0 Не путайте XPath и регулярку. Да и по ходу вы не умеете использовать регулярки.

    Имейте ввиду, действие "Извлечь все данные" возвращает массив (список) совпадений. Это означает, что действие будет выполнять поиск по всему доступному документу до самого конца, даже после того, как найдёт совпадение. Это приводит к бОльшей нагрузке и есть вероятность, что действие найдёт несколько совпадений. Ещё массив с одним элементом это всё равно массив, далеко не все действия смогут конвертировать массив с одним элементом в строку автоматически и выдадут ошибку.
    Что бы избежать этих проблем лучше используйте действие "Первое вхождение"

  • @Fox В регулярке это учитывается, так что используется именно "Извлечь все данные".

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

    @Fox В регулярке это учитывается, так что используется именно "Извлечь все данные".

    Прочитайте ещё раз, я указал несколько возможных проблем. Вы вправе использовать любые действия и создавать любые конструкции, я лишь указал на возможные проблемы

  • @Fox Проблемы есть абсолютно во всём, что есть в BAS.
    Например в Clickem парс нужного текста делается совсем легко:

    <parse>sitelink[=]target|word" href="|"|</parse>
    

    Где target - переменная, содержащая тело письма (в данном случае с приведённого примера). Этот способ первого вхождения.
    Можно начинать поиск с конца. Пример:

    <xparse>sitelink[=]target|href="|"|</xparse>
    

    А можно делать двойной парс. Пример:

    <parse>sitelink[=]target|office:word"|style|href="|"|</parse>
    

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

  • @gurkin4 В БАС по аналогии работает инструмент "Получить подстроку между двумя подстроками", предварительно тело письма сохранить в переменную.
    @Alpa4in0 Посмотри в эту сторону

  • @Lokko Спасибо за подсказку, реально работает! Буду иметь ввиду на будущее.

  • 0 Votes
    4 Posts
    736 Views
  • 0 Votes
    4 Posts
    769 Views
  • 0 Votes
    4 Posts
    838 Views
  • 1 Votes
    21 Posts
    4700 Views
  • 0 Votes
    11 Posts
    2811 Views