Buenas...
Quiero construir una expresión regular para leer esto: 10:30, que sera una expresión de tiempo (hora:minutos). Asumiendo que pueden existir dos variantes:
Forma 1-> 10:40
Forma 2-> 8:10
En la Forma 1 son dos valores antes del delimitado ":" y dos valores después.
En la Forma 2 es un solo valor antes del delimitado ":" y dos valores después.
Me hice un codigo pero no logro dar con el correcto para mi programa:
El resultado que me da es:
Se supone deberia crear un array con los dos valores encontrados y analizados, pero no sucede...
Cual seria la forma correcta ?
Quiero construir una expresión regular para leer esto: 10:30, que sera una expresión de tiempo (hora:minutos). Asumiendo que pueden existir dos variantes:
Forma 1-> 10:40
Forma 2-> 8:10
En la Forma 1 son dos valores antes del delimitado ":" y dos valores después.
En la Forma 2 es un solo valor antes del delimitado ":" y dos valores después.
Me hice un codigo pero no logro dar con el correcto para mi programa:
Código (php) [Seleccionar]
<?php
$hora1= '10:20'; # hora correcta
$hora2= '8:30'; # hora correcta
$hora3= '150:20'; # hora incorrecta
$hora4= 'ab:20'; # hora incorrecta
$patron= '/[0-9]{2}\:[0-9]{2}/is';
preg_match( $patron, $hora1, $r);
print_r($r);
?>
El resultado que me da es:
Código [Seleccionar]
Array ( [0] => 10:20 )
Se supone deberia crear un array con los dos valores encontrados y analizados, pero no sucede...
Cual seria la forma correcta ?