NLP Academy · Урок

Поиск адресов электронной почты и URL

Извлекайте контактные данные из неструктурированного текста

Урок 2 из 413 шагов

«Поиск адресов электронной почты и URL» — бесплатный урок NLP Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения NLP Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс NLP Academy содержит 4 уроков всего.

Шаблоны скрываются в неаккуратном тексте

Настоящий текст полон структурированных фрагментов, например адресов электронной почты и ссылок. Регулярные выражения позволяют автоматически извлекать их даже из длинных неаккуратных документов.

Как выглядит адрес электронной почты

Адрес электронной почты состоит из имени, знака @, домена и расширения. Распознавание этой формы — первый шаг к написанию подходящего шаблона.

Простой шаблон адреса электронной почты

Этот шаблон адреса электронной почты находит символы слова, знак @, ещё несколько символов, точку и буквы. Он не идеален, но распознаёт большинство настоящих адресов.

re.findall("\w+@\w+\.\w+", "hi a@b.com")

Почему точку нужно экранировать

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

Извлечение нескольких адресов сразу

Объедините шаблон адреса электронной почты с re.findall, чтобы просмотреть весь документ и вернуть все содержащиеся в нём адреса в виде чистого списка Python.

emails = re.findall(pattern, text)

Как выглядит URL

URL обычно начинается с http или https, затем идут ://, домен и путь. Такое предсказуемое начало делает URL отличной целью для регулярного выражения.

Начальный шаблон URL

Этот шаблон URL находит http или https, а затем любые символы, кроме пробельных. Необязательная s после http записывается с помощью квантификатора вопросительного знака.

re.findall("https?://\S+", text)

Необязательные части с вопросительным знаком

Вопросительный знак делает предшествующую ему часть необязательной. В https? символ s может присутствовать или отсутствовать, поэтому и http, и https успешно сопоставляются.

Жадное сопоставление может захватить лишнее

По умолчанию квантификаторы являются жадными и захватывают максимально возможный объём. При работе с URL это может захватить ненужные конечные знаки препинания.

Управляйте совпадением с помощью границ

Используйте \S, чтобы остановиться на первом пробеле, или обрежьте результат после этого. Если Вы знаете, где должно заканчиваться совпадение, извлечение будет аккуратным.

Проверяйте на настоящих примерах

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

Быстрая проверка

Вы хотите сделать http необязательным, оставив необязательной только s. Какой символ делает предшествующий символ необязательным?

Итоги: извлечение контактной информации

Вы создали шаблоны для адресов электронной почты и URL, экранировали литеральные точки и использовали вопросительный знак для необязательных частей. Теперь Вы можете извлекать контактную информацию из текста. 🔍

Можно начать бесплатно

Изучай Python с ИИ-репетитором — бесплатно

Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.

Курсы
30
Уроки
120

Часто задаваемые вопросы

Урок «Поиск адресов электронной почты и URL» бесплатный?

Да — полный текст урока «Поиск адресов электронной почты и URL» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс NLP Academy, подпишись на CoddyKit PRO. Курс NLP Academy содержит 4 уроков всего.

Чему я научусь в уроке «Поиск адресов электронной почты и URL»?

Извлекайте контактные данные из неструктурированного текста Ты практикуешь NLP Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать NLP Academy?

Предыдущий опыт не требуется. NLP Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.

Сколько времени занимает урок «Поиск адресов электронной почты и URL»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке NLP Academy?

Да. Каждый урок NLP Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Регулярные выражения за 5 минут
  2. Поиск адресов электронной почты и URL
  3. Группы захвата и замены
  4. Приёмы токенизации с регулярными выражениями
← Назад к NLP Academy