En python, quiero verificar si la cadena de entrada está en "HH: MM" como 01:16 o 23:16 o 24:00. Dando verdadero o falso por el resultado.verificación de formato de hora python
¿Cómo puedo lograr esto usando la expresión regular?
En python, quiero verificar si la cadena de entrada está en "HH: MM" como 01:16 o 23:16 o 24:00. Dando verdadero o falso por el resultado.verificación de formato de hora python
¿Cómo puedo lograr esto usando la expresión regular?
Usted puede lograr esto sin expresiones regulares:
import time
def isTimeFormat(input):
try:
time.strptime(input, '%H:%M')
return True
except ValueError:
return False
>>>isTimeFormat('12:12')
True
>>>isTimeFormat('012:12')
False
wow que fue realmente muy útil; ¡Gracias! – jambox
esto le dará el objeto de expresiones regulares que comprobarlo. Sin embargo, dependiendo de a quién le preguntes las 24:00 podría no ser una hora válida (son las 00:00). Pero supongo que esto es fácil de modificar para satisfacer sus necesidades.
import re
regexp = re.compile("(24:00|2[0-3]:[0-5][0-9]|[0-1][0-9]:[0-5][0-9])")
import re
time_re = re.compile(r'^(([01]\d|2[0-3]):([0-5]\d)|24:00)$')
def is_time_format(s):
return bool(time_re.match(s))
Partidos de todo, desde las 00:00 hasta las 24:00.
Este patrón debe ayudarle a:
http://regexlib.com/DisplayPatterns.aspx?cattabindex=4&categoryId=5
¿Quieres "dos dígitos, dos puntos, dos dígitos" o quiere comprobar si en realidad es un valor de tiempo legal? – balpha
Estrictamente hablando '24: 00 'no es una cadena' HH: MM 'válida. '00: 00 'a '23: 59' son. –
La medianoche es un caso especial y puede denominarse tanto "00:00" como "24:00". La notación "00:00" se usa al comienzo de un día calendario y es la más utilizada. [ISO 8601] (http://en.wikipedia.org/wiki/ISO_8601) –