Вопрос по регулярке, не пойму почему так получается.. Нид хелп

  • Автор темы Автор темы backoff
  • Дата начала Дата начала

backoff

Client
Регистрация
20.04.2015
Сообщения
6 386
Реакции
6 671
Баллы
113
ку, имеем

C#:
Развернуть Свернуть Копировать
<a href="https://t.me/test" target="_blank" class="link link--external" rel="nofollow ugc noopener">https://t.me/test</a>) и их сайт игры в авиатор <a href="https://test-check-site.com/" target="_blank" class="link link--external" rel="nofollow ugc noopener">https://test-check-site.com/</a>

использую регулярку чтобы выцепить самый короткий ответ с ссылкой
C#:
Развернуть Свернуть Копировать
<a.*?test-check-site.com.*?</a>

то есть ответ должен быть таким
C#:
Развернуть Свернуть Копировать
<a href="https://test-check-site.com/" target="_blank" class="link link--external" rel="nofollow ugc noopener">https://test-check-site.com/</a>

почему он такой?
C#:
Развернуть Свернуть Копировать
<a href="https://t.me/test" target="_blank" class="link link--external" rel="nofollow ugc noopener">https://t.me/test</a>) и их сайт игры в авиатор <a href="https://test-check-site.com/" target="_blank" class="link link--external" rel="nofollow ugc noopener">https://test-check-site.com/</a>
 
да, но по идее это значение .*? берет самое короткое совпадение.
и это короткое совпадение и должно быть ссылкой
Оно спотыкается на первое же совпадение - идет поиск слева направо, а не из середины или еще как.
 
идет поиск слева направо, а не из середины или еще как.
ааа, понятно, думал вычленяет как-то ...
Просто между <a href
тогда в свете новых данных, надо предугадать, что возможно где-то между этими символами <a href= может что-то быть типа <a class="style" href= и тогда уже схема биться не будет
 
[^<>]*
все символы, кроме < и >
Таким образом можно быть уверенным, что внутри искомой строки не будет других html тегов
 

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