Как я могу выбрать эту конкретную часть строки с помощью регулярных выражений? - PullRequest
1 голос
/ 06 марта 2019

Привет и спасибо за ваше время.

У меня есть следующий пример строки: "Hola Luis,", но шаблон строки всегда будет "Hola {{name}}, ".

Как бы регулярному выражению соответствовать любое имя? Можно предположить, что имя будет следовать за пробелом и «Hola» до этого, и сразу после него будет запятая.

Спасибо!

Ответы [ 4 ]

1 голос
/ 06 марта 2019

Вы можете использовать следующее регулярное выражение , предполагая, что, как вы упомянули, формат всегда одинаков * :

import re
s = "Hola Luis,"
re.search('Hola (\w+),', s).group(1)
# 'Luis'
0 голосов
/ 06 марта 2019

Согласно Программисты Falsehoods верят в имена и ваши требования, я буду использовать следующее регулярное выражение: (?<=Hola )[^,]+(?=,).

0 голосов
/ 06 марта 2019

Продолжая с @ yatu,

Без регулярного выражения :

print("Hola Luis,".split(" ")[1].strip(","))

Объяснение

split(" ") # to split the string with spaces 
[1]        # to get the forthcoming part
strip(",") # to strip off any ','

OUTPUT

Luis
0 голосов
/ 06 марта 2019
s = 'Hola test'
re.match(r'Hola (\w+)', s).groups()[0]

Результаты:

'test'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...