07 Июл 2023
2 мин
46

Разделение строк на слова с использованием нескольких разделителей

Одна из распространенных задач при работе с текстовыми данными в Python — это разделение строк на отдельные слова. Это может быть полезно во многих

Содержание

Одна из распространенных задач при работе с текстовыми данными в Python — это разделение строк на отдельные слова. Это может быть полезно во многих ситуациях, включая обработку естественного языка, анализ текста и многие другие.

Рассмотрим пример. Есть строка:

"Привет, мир! Как твои дела?"

Цель — разделить эту строку на список слов, удалив знаки пунктуации:

['Привет', 'мир', 'Как', 'твои', 'дела']

Стандартный метод str.split() в Python может разделить строку на слова, но он работает только с одним разделителем. Поэтому, если применить его к нашей строке, мы получим слова со знаками пунктуации:

['Привет,', 'мир!', 'Как', 'твои', 'дела?']

Как же быть, если нужно разделить строку на слова, удалив все знаки пунктуации?

Решение с использованием регулярных выражений

Одним из решений этой задачи является использование регулярных выражений. В Python для работы с регулярными выражениями есть модуль re.

import re

Метод re.findall() ищет все вхождения подстроки в строке, которые соответствуют заданному шаблону. Шаблон \w+ соответствует одному или более слову.

text = "Привет, мир! Как твои дела?"
words = re.findall('\w+', text)
print(words)

В результате получим:

['Привет', 'мир', 'Как', 'твои', 'дела']

Вот и все! Теперь знаем, как разделить строку на слова с использованием нескольких разделителей.

Содержание

Добавить комментарий

Определи профессию по рисунку