Python используя AND с регулярным выражением - PullRequest
0 голосов
/ 05 марта 2020

Так что я осмотрел inte rnet около 20 минут, и я не смог понять это. Можно ли использовать AND в регулярном выражении или что-то подобное (я только начал изучать регулярное выражение)?

Например, у меня есть строка "finksdssfsk32residogs", и я хочу получить вывод: "32 собаки ». Я пытался использовать re.search, re.match и re.findall, но мне не повезло. Я пробовал такие вещи, как:

re.findall(r"(\d{2})(dogs)", str)
re.search(r"(\d{2})(dogs)", str)

И я пробовал несколько комбинаций каждой. И я знаю, что могу сделать это с несколькими строками, но цель состоит в том, чтобы получить «32 собаки» из «finksdssfsk32residogs» только с одной строкой. Любая помощь приветствуется, спасибо.

1 Ответ

0 голосов
/ 05 марта 2020

Вы почти получили это. Вам просто нужно немного места между числами и собаками.

Можете ли вы просто сопоставить что-нибудь? Как насчет (\d{2}).*(dogs)? Затем вы можете заменить среднюю часть пробелом, используя соединение:

>>> print(' '.join(re.search(r'(\d{2}).*(dogs)', 'finksdssfsk32residogs').groups()))
32 dogs
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...