Split "Integers" los van een string zoals "ABC123"?

Met PHP wil ik de "Integers Only" uit de strings verwijderen die worden gecombineerd met "Characters" + "Integers".

The sample Strings will be:
- AB12 ---------> 12
- GJR987 ------> 987
- X28753 -------> 28753
.. like that.

Is it the way of preg_split ? I hope it is but i don't surely know the REGEXP for it. I only know following one but it gives strings only back.

preg_split('/\d+/',$INPUT,-1,PREG_SPLIT_OFFSET_CAPTURE);

How can i do?

0

4 antwoord

U kunt dit gebruiken:

$pattern = '/(\d+)/';
preg_match($pattern, $string, $matches);
$matches = $matches[1];

and it will work as you can see here: http://ideone.com/Bnbgd

4
toegevoegd
Wowww! Dit is het maatje! Heel erg bedankt en dat is geweldig!
toegevoegd de auteur 夏期劇場, de bron

Er is een functie preg_match() ... De regex die u zou kunnen gebruiken is '/ (\ d +) /'

1
toegevoegd

Een leuke manier met regexp:

<?php
$string = 'GJR987A9FD34';
preg_match_all('/(\d+)/', $string, $matches);
$number = implode('',$matches[0]);
echo $number; # => 987934
?>
1
toegevoegd

Dit lijkt te werken

$test="ABC123";
$final="";
for ($i = 0; $i < strlen($test); $i++) {

    if(is_numeric($test[$i])){
        $final=$final.$test[$i];

    }

}
echo $final;
0
toegevoegd