Для целей этого проекта я использую более точные выражения регулярных выражений, а не более общие. Я считаю слова вхождений из списка слов в текстовом файле, который я импортирую в свой скрипт, называемый vocabWords, где каждое слово в списке имеет формат \bword\b
.
Когда я запускаю свой скрипт, \bwhat\b
подбирает слова "что" и "что есть", но \bwhat's\b
не подбирает слова. Если я поменяю порядок слов апострофом перед словом root, слова будут правильно подсчитаны. Как я могу изменить свой список регулярных выражений, чтобы слова считались правильно? Я понимаю, что проблема заключается в использовании "\ b", но я не смог найти, как это исправить. У меня не может быть более общего регулярного выражения, и я должен включить сами слова в шаблон регулярного выражения.
vocabWords:
\bwhat\b
\bwhat's\b
\biron\b
\biron's\b
Мой код:
matched = []
regex_all = re.compile('|'.join(vocabWords))
for row in df['test']:
matched.append(re.findall(regex_all, row))