Я пытаюсь регулярно использовать домены из текста. Я хочу игнорировать домены, за которыми следует тег </span>
.
Например, учитывая следующий ввод:
matchme.com<span>dontmatchme.com</span>
Я хотел бы, чтобы мои совпадения содержали один элемент:
matchme.com
Я пробовал следующее:
(?:[A-Za-z0-9|-]+\.*[A-Za-z0-9|-]+\.[a-z]+)(?!<\/span)
Проблема с вышеизложенным заключается в том, что отрицательный просмотр просто означает, что второй элемент во входных данных обрезан и по-прежнему считается действительным:
matchme.com
dontmatchme.co
У меня есть регулярное выражение101 здесь https://regex101.com/r/FpWomQ/1
.co
m
, потому что впереди нет</span
. Вам понадобятся притяжательные квантификаторы (недоступные в регулярном выражении Python) или добавление границы слова\b
. Посмотрите обновленную демонстрацию. - person bobble bubble   schedule 21.07.2018