Как захватить остаток предложения после двух слов, используя регулярное выражение Python (пример приведен) - PullRequest
1 голос
/ 22 марта 2019

См. Код Python.Как определить result так, чтобы он возвращал все после второй границы слова?В этом случае «ОТСУТСТВИЕ ПРЕДЛОЖЕНИЯ, КОТОРОЕ МОЖЕТ БЫТЬ ДЛИННЫМ»

import re
content = '!wordOne wordTwo THE REST OF THE SENTENCE WHICH COULD BE LONG' 
result= re.sub(r'^\W*\w+\W*', '', content)

Я застрял, потому что код выше возвращает «wordTwo ОТДЫХ ОТ СТОЛБА, КОТОРЫЙ МОЖЕТ БЫТЬ ДЛИННЫМ».В идеале я хочу, чтобы он возвратил "ОТДЫХ ОТЗЫВОВ, КОТОРЫЙ МОЖЕТ БЫТЬ ДЛИННЫМ"

Требования:

  • ! WordOne всегда начинается с a!сопровождаемые \ w символами
  • wordTwo всегда будут ограничены пробелами и будут состоять из \ w
    символов

1 Ответ

2 голосов
/ 22 марта 2019

Вы можете использовать

re.sub(r'^!\w+\s+\w+\s+', '', content)

См. Демоверсию regex

Подробности

  • ^- начало строки
  • ! - ! char
  • \w+ - 1+ слов символов
  • \s+\w+\s+ - 1+ пробелов, 1+символы слова, 1+ пробелы.

См. график Regulex :

enter image description here

Python demo :

import re
content = '!wordOne wordTwo THE REST OF THE SENTENCE WHICH COULD BE LONG' 
result= re.sub(r'^!\w+\s+\w+\s+', '', content)
print(result)
# => THE REST OF THE SENTENCE WHICH COULD BE LONG
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...