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

Tsuk15

Client
Регистрация
25.04.2017
Сообщения
102
Благодарностей
40
Баллы
28
Всем привет. Нужно почистить список мыл, не все они записаны так как надо. Сделал шаблон, который берет строку из списка и парсит его вот таким регулярным выражением:
Код:
.*?{-Variable.Servers-}|(?<=\ ).*?{-Variable.Servers-}|(?<=:).*?{-Variable.Servers-} //где {-Variable.Servers-} = (@hotmail.com$|@yahoo.com$|@gmail.com$)
То есть перед текстом стоит или пробел или ":" или ни чего не стоит и текст заканчивается на @hotmail.com или @yahoo.com и т.д. В общем как я только эту регулярку не крутил, но у меня получается, что когда перед почтой ни чего не стоит, то она парсится корректно но когда стоит ":" или пробел, то парсится вместе с двоеточием или пробелом как-то так: ":[email protected]". Наверно я как-то не правильно условие "или" указываю.
Надеюсь я понятно разъяснился, помогите исправить ошибку или составьте свой вариант.
р.s. Я пробовал и что то типа:
Код:
(.*?|(?<=\ ).*?|(?<=:-).*?){-Variable.Servers-}
но результат тот же:(:(
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 684
Благодарностей
4 641
Баллы
113
\w+([._-]\w+)*@(\w+(-\w+)*\.)+\w+

только копируй без пробела в конце
 

SHELBY

Client
Регистрация
09.09.2016
Сообщения
237
Благодарностей
291
Баллы
63
Попробуй такую регулярку
Код:
\b[a-zA-Z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,4}\b
 

Tsuk15

Client
Регистрация
25.04.2017
Сообщения
102
Благодарностей
40
Баллы
28

Tsuk15

Client
Регистрация
25.04.2017
Сообщения
102
Благодарностей
40
Баллы
28

doc

Client
Регистрация
30.03.2012
Сообщения
8 684
Благодарностей
4 641
Баллы
113

xopek2007

Client
Регистрация
10.05.2013
Сообщения
102
Благодарностей
11
Баллы
18
Тоже прошу помощи. Есть код
HTML:
<td class="name">
            <a href="/address/7651688">Вася</a>
          </td>
<td class="number">
            <a href="/address/7651688">17-nb-610-A</a>
          </td>          
<td class="name">
            <a href="/address/1257765">Коля</a>
          </td>
<td class="number">
            <a href="/address/1257765">16-nb-676-B</a>
          </td>        
<td class="name">
            <a href="/address/5678708">Федя</a>
          </td>
<td class="number">
            <a href="/address/5678708">17-nb-294-C</a>
          </td>
Как можно взять только имена?
 

Sobesednic

Client
Регистрация
24.12.2012
Сообщения
391
Благодарностей
77
Баллы
28

evgen_po

Client
Регистрация
27.08.2013
Сообщения
848
Благодарностей
532
Баллы
93
Тоже прошу помощи. Есть код
HTML:
<td class="name">
            <a href="/address/7651688">Вася</a>
          </td>
<td class="number">
            <a href="/address/7651688">17-nb-610-A</a>
          </td>         
<td class="name">
            <a href="/address/1257765">Коля</a>
          </td>
<td class="number">
            <a href="/address/1257765">16-nb-676-B</a>
          </td>       
<td class="name">
            <a href="/address/5678708">Федя</a>
          </td>
<td class="number">
            <a href="/address/5678708">17-nb-294-C</a>
          </td>
Как можно взять только имена?
(?<="name">\s+<a\ href="/address/\d+?">).*?(?=</a>)
 
  • Спасибо
Реакции: xopek2007

xopek2007

Client
Регистрация
10.05.2013
Сообщения
102
Благодарностей
11
Баллы
18
Вот это да!!! Работает, волшебным образом все нашло:bp:. Спасибо большое, буду учить матчасть по ссылке выше.
 

Tsuk15

Client
Регистрация
25.04.2017
Сообщения
102
Благодарностей
40
Баллы
28
\w+([._-]\w+)*@(\w+(-\w+)*\.)+\w+

только копируй без пробела в конце
А как поступить в этом случае
Код:
<li class="list-item ">
   
        <a href="http://m.my.mail.ru/mail/ssp/" class="list-item__link">
   
        <span class="list-item__avatar " style="background-image: url(http://avt-23.foto.mail.ru/mail/ssp/_avatar)" data-user-dir="">
           
        </span>
       
        <span class="list-item__wrap">
            <span class="list-item__text">
                <span class="list-item__title ">Сергей Савич</span>
                <span class="list-item__info">Москва, Россия</span>
               
            </span>
        </span>
       
        </a>
   
</li>

     

<li class="list-item ">
   
        <a href="http://m.my.mail.ru/mail/utg/" class="list-item__link">
   
        <span class="list-item__avatar " style="background-image: url(http://avt-25.foto.mail.ru/mail/utg/_avatar)" data-user-dir="">
           
        </span>
       
        <span class="list-item__wrap">
            <span class="list-item__text">
                <span class="list-item__title ">Алексей Качан</span>
                <span class="list-item__info">50 лет | Москва, Россия</span>
               
            </span>
        </span>
       
        </a>
   
</li>

     

<li class="list-item ">
   
        <a href="http://m.my.mail.ru/mail/chernomyrdin/" class="list-item__link">
   
        <span class="list-item__avatar " style="background-image: url(http://avt-11.foto.mail.ru/mail/chernomyrdin/_avatar)" data-user-dir="">
           
        </span>
       
        <span class="list-item__wrap">
            <span class="list-item__text">
                <span class="list-item__title ">Andrey Chernomyrdin</span>
                <span class="list-item__info">47 лет</span>
               
            </span>
        </span>
        <span class="list-item__date">В сети</span>
       
        </a>
   
</li>

     

<li class="list-item ">
   
        <a href="http://m.my.mail.ru/mail/501/" class="list-item__link">
   
        <span class="list-item__avatar " style="background-image: url(http://avt-12.foto.mail.ru/mail/501/_avatar)" data-user-dir="">
           
        </span>
       
        <span class="list-item__wrap">
            <span class="list-item__text">
                <span class="list-item__title ">Алексей Подосенов</span>
                <span class="list-item__info">Москва, Россия</span>
               
            </span>
        </span>
        <span class="list-item__date"> 4 мая</span>
       
        </a>
   
</li>

     

<li class="list-item ">
   
        <a href="http://m.my.mail.ru/mail/stlp/" class="list-item__link">
   
        <span class="list-item__avatar " style="background-image: url(http://avt-4.foto.mail.ru/mail/stlp/_avatar)" data-user-dir="">
           
        </span>
       
        <span class="list-item__wrap">
            <span class="list-item__text">
                <span class="list-item__title ">Bиктоp Стoлпянcкий</span>
                <span class="list-item__info">40 лет | Свердловск, Луганская обл., Украина</span>
               
            </span>
        </span>
        <span class="list-item__date">22:54</span>
       
        </a>
   
</li>


<li class="list-item ">
   
        <a href="http://m.my.mail.ru/mail/mitus74/" class="list-item__link">
   
        <span class="list-item__avatar " style="background-image: url(http://avt-16.foto.mail.ru/mail/mitus74/_avatar)" data-user-dir="">
           
        </span>
       
        <span class="list-item__wrap">
            <span class="list-item__text">
                <span class="list-item__title ">Дмитрий Крадинов</span>
                <span class="list-item__info">43 года | Тамбов, Тамбовская обл., Россия</span>
               
            </span>
        </span>
        <span class="list-item__date">В сети</span>
       
        </a>
   
</li>
Нужно что бы парсились фрагменты которые начинаются с
Код:
<li class="list-item ">
и заканчивались на
Код:
<span class="list-item__date">В сети</span>
С помощью конструктора сделал такую вот регулярку
Код:
<li\ class="list-item\ ">[\w\W]*?class="list-item__date">В\ сети</span>
Но таким способом парсятся не самые короткие участки совпадения, а длинные совпадения начиная с первого упоминания
Код:
<li class="list-item ">
 
  • Спасибо
Реакции: xopek2007

Кто просматривает тему: (Всего: 2, Пользователи: 0, Гости: 2)