Visa ett inlägg
Oläst 2013-01-14, 12:43 #2
coredevs avatar
coredev coredev är inte uppkopplad
Bara ett inlägg till!
 
Reg.datum: Sep 2007
Inlägg: 1 554
coredev coredev är inte uppkopplad
Bara ett inlägg till!
coredevs avatar
 
Reg.datum: Sep 2007
Inlägg: 1 554
Citat:
Ursprungligen postat av aikon Visa inlägg
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.
coredev är inte uppkopplad   Svara med citatSvara med citat