Как включить пользовательский ввод в предпросмотр и утверждение в заданном виде в регулярном выражении - PullRequest
0 голосов
/ 06 февраля 2019

Как включить пользовательский ввод вместе с утверждением lookahead / lookbehind в регулярном выражении, чтобы получить контекст слова?

user_term = input('Enter a term: ')
word = 'Hello, this is an autogenerated message. Do not reply'
res_bef = re.search('(\w+-?,?.?\s){3}(?=autogenerated)', word)
print(res_bef.group(0))

В настоящее время я вручную изменяю эту часть кода (? = Автоматически сгенерированный), чтобы получить термины, которые я хочу, но я хочу, чтобы код был более гибким, чтобы принять любой пользовательский ввод.

1 Ответ

0 голосов
/ 06 февраля 2019

Вы можете отформатировать пользовательский ввод в:

user_term = input('Enter a term: ')
word = 'Hello, this is an autogenerated message. Do not reply'
res_bef = re.search(r'(\w+-?,?.?\s){{3}}(?={user})'.format(user=user_term), word)
print(res_bef.group(0))
...