Ho scritto la regexp ^(?:([1-5])|([1-5]) .*|.* ([1-5])|.* ([1-5]) .*)$
in modo che corrisponda a una cifra autonoma 1-5 o una cifra separata da almeno uno spazio dal resto della stringa. L'ho provato nei servizi online e il risultato è la cifra stessa. Tuttavia, quando si utilizza il codicePerché preg_match restituisce alcuni elementi vuoti?
preg_match('/^(?:([1-5])|([1-5]) .*|.* ([1-5])|.* ([1-5]) .*)$/', 'order 12314124 5', $matches);
ottengo questo:
Array ([0] => order 12314124 5 [1] => [2] => [3] => 5)
La [0] elemento è una partita piena che è buono. Ho anticipato che l'elemento [1] è 5 ma è vuoto e c'è un altro elemento vuoto. Perché questi elementi vuoti appaiono?
grazie mille – onerror