我希望PHP中的字符串中的文本和数字部分

时间:2014-02-28 09:40:44

标签: php string

我有一个字符串

$str ='california 94063';

现在我想加利福尼亚和94063都有不同的变量。 字符串可以是任何东西

提前致谢....

4 个答案:

答案 0 :(得分:3)

怎么样

$strings = explode(' ', $str);

假设你的字符串有''作为分隔符。

然后,如果要查找$strings数组的数字条目,可以使用is_numeric函数。

答案 1 :(得分:1)

这样做

list($str1,$str2)=explode(' ',$str);
echo $str2;

答案 2 :(得分:1)

如果您的字符串布局始终相同(例如:遵循给定的格式),那么我使用sscanfhttp://www.php.net/manual/en/function.sscanf.php)。

list($str, $number) = sscanf('california 94063, "%str %d");

答案 3 :(得分:0)

<?php
$str ='california 94063';
$x = preg_match('(([a-zA-Z]*) ([0-9]*))',$str, $r);
echo 'String Part='. $r[1];
echo "<br />";
echo 'Number Part='.$r[2];
?>

如果可以更改文本模式,那么我找到了这个解决方案 资源 :: How to separate letters and digits from a string in php

<?php
$string="94063 california";
$chars = '';
$nums = '';
for ($index=0;$index<strlen($string);$index++) {
    if(isNumber($string[$index]))
        $nums .= $string[$index];
    else    
        $chars .= $string[$index];
}
echo "Chars: -".trim($chars)."-<br>Nums: -".trim($nums)."-";


function isNumber($c) {
    return preg_match('/[0-9]/', $c);
}
?>