Citat:
Ursprungligen postat av aikon
Hur gör jag bäst följande i php.
$string = "a1b12ccc3d44";
Jag vill splitta denna sträng mellan numeriska och ickenumeriska tecken, och få en array som ska se ut så här:
$stringarray[0] = "a"
$stringarray[1] = "1"
$stringarray[2] = "b"
$stringarray[3] = "12"
$stringarray[4] = "ccc"
$stringarray[5] = "3"
$stringarray[6] = "d"
$stringarray[7] = "44"
Är usel på regex men gissar att det är vägen att gå.
|
Du kan säkert lösa det med regular expressions, men jag hade i detta fall löst det med en foreach-loop. Loopa igenom din sträng. Ha ett state som säger om nuvarande index är bokstäver eller nummer. Om nästa typ av tecken inte stämmer överens med det förra så inkrementerar du indexet och börjar appenda på nästa index istället.