Создать регулярное выражение
string = "1, 2, 3, 4, 34"
необходимо, чтобы регулярное выражение искало цифры от 1 до 7, указанные через запятую. В данном случае stdout должен быть такой ["1", "2", "3", "4"]
я пытался искать вот так, но не знаю как учесть запятую:
s = re.findall('[1-7]{1}', string)
Ответы (3 шт):
Автор решения: GrAnd
→ Ссылка
Если просто найти цифры:
re.findall(r'\b[1-7]\b', string)
Если запятые принципиально, то:
re.findall(r'\b[1-7]\b(?=\s*(?:,|$))', string)
Автор решения: Евгения Рубанова
→ Ссылка
string = "1, 2, 3, 4, 34, 5"
s = re.findall('(^|[^0-9])([1-7])(\,|$)', string)
s = [x[1] for x in s]
print(s)
Вывод в консоль:
['1', '2', '3', '4', '5']
Автор решения: SergFSM
→ Ссылка
вариантов много, вот еще один:
string = "1, 2, 3, 4, 34,"
s = re.findall(r'\b([1-7]),',string)
print(s) # ['1', '2', '3', '4']