Исключая фразы из текста - PullRequest
       0

Исключая фразы из текста

0 голосов
/ 31 августа 2018

Предполагая, что у меня есть такое предложение:

text = 'Romeo and Juliet is a tragedy written by William Shakespeare early in his career about two young star-crossed lovers whose deaths ultimately reconcile their feuding families'

и список с фразами:

phrases = ['Romeo and Juliet', 'William Shakespeare', 'career', 'lovers', 'deaths', 'feuding families']

Можно ли исключить эти фразы из текста, чтобы получить:

result = ['is', 'a', 'tragedy', 'written', 'by', 'early', 'in', 'his', 'about', 'two', 'young', 'star-crossed', 'whose', 'ultimately', 'reconcile', 'their']

Я использовал фильтр раньше, но только с отдельными словами, а не с фразами

Ответы [ 2 ]

0 голосов
/ 31 августа 2018

Вы можете заменить все ваши фразы пустой строкой на str replace , а затем использовать str split , чтобы разбить полученную строку по пробелам.

Например:

for phrase in phrases:
    text = text.replace(phrase, '')

result = text.split()

print(result)
0 голосов
/ 31 августа 2018

Вы можете просто перебрать фразы и использовать функцию replace из python, чтобы удалить их из строки. После этого вы разбиваете строку на пробелы и должны получить желаемый результат.

Добро пожаловать в Stackoverflow кстати (;

for phrase in phrases:
    text = text.replace(phrase, '')

result = text.split(' ')
result.remove('')
print(result)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...