ПочатиПочніть безкоштовно

RegEx у Python

Правиловий (rule-based) витяг інформації корисний для багатьох завдань НЛП. Деякі типи сутностей, як-от дати або номери телефонів, мають чіткі формати, які можна розпізнати набором правил без навчання моделі. У цій вправі ви попрактикуєтеся у використанні пакета re для RegEx. Мета — знайти номери телефонів у заданому text.

Пакет re вже імпортовано для вас. Ви можете використовувати \d, щоб знаходити шаблони рядків, які відповідають метасимволу для будь-якої цифри від 0 до 9.

Ця вправа є частиною курсу

Обробка природної мови (NLP) зі spaCy

Переглянути курс

Інструкції до вправи

  • Визначте шаблон для збігу номерів телефону у форматі (111)-111-1111.
  • Знайдіть усі збіги за допомогою методу re.finditer().
  • Для кожного збігу виведіть початкову й кінцеву позиції та відповідний фрагмент у заданому text.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

text = "Our phone number is (425)-123-4567."

# Define a pattern to match phone numbers
pattern = r"\((____){____}\)-(____){____}-(____){____}"

# Find all the matching patterns in the text
phones = re.____(pattern, text)

# Print start and end characters and matching section of the text
for match in phones:
    start_char = match.____
    end_char = match.____
    print("Start character: ", ____, "| End character: ", ____, "| Matching text: ", text[____:____])
Редагувати та запускати код