Найти - Пользователи
Полная версия: findall подскажите не поняла(
Начало » Python для новичков » findall подскажите не поняла(
1
Kiprida
простите возможно вопрос глупый но ломаю голову уже сутки

есть строка с данными - convert_datetime(“21.01.2022”, “%Y-%m-%d”, “%d.%m.%Y”)

как из нее с помощью функции findall вытянуть дату ? 21.01.2022 (и дата может быть любой, но в виде даты
понимаю что вопрос с масивом но никак не могу врубится как вытащить
py.user.next
Kiprida
есть строка с данными
Непонятно, какая у тебя строка.

Допустим, у тебя прямо такая строка
convert_datetime("21.01.2022", "%Y-%m-%d", "%d.%m.%Y")

Тогда извлечём из неё дату, если дата любая
  
>>> import re
>>> 
>>> text = """convert_datetime("21.01.2022", "%Y-%m-%d", "%d.%m.%Y")"""
>>> 
>>> pat = r'\("(\d{2}\.\d{2}\.\d{4})"'
>>> match = re.search(pat, text)
>>> if match is not None:
...     out = match.group(1)
... 
>>> print(out)
21.01.2022
>>> 
>>> out = re.findall(pat, text)[0]
>>> print(out)
21.01.2022
>>>
Kiprida
Спасибо огромное, путалась именно с этим
py.user.next
(\d{2}\.\d{2}\.\d{4})
py.user.next
Точки обязательно экранируй, иначе датой будет считаться и вот такое “21.01.2022”, и вот такое “21x01x2022”, и вот такое “2130152022”. Точка совпадает с любым символом, а экранированная точка совпадает только с точкой.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB