我怎么能将输入和存储中的字符和数字分开作为单独的变量php

时间:2013-03-04 08:05:20

标签: php

我如何将输入和存储中的字符和数字分隔为单独的变量php,例如我的输入字符串为$str="abc567",我需要将其分隔为$str1="abc"$str2="567"

5 个答案:

答案 0 :(得分:1)

您可以使用lookahead and lookbehind来使用preg_split:

print_r(preg_split('#(?<=\d)(?=[a-z])#i', "abc567"));

打印

Array
(
    [0] => abc
    [1] => 567
)

我希望这有帮助:) 问候。

答案 1 :(得分:1)

通过使用preg_split,您可以传递正则表达式字符串。这将返回与给定正则表达式字符串匹配的所有模式,您可以使用它将各种值存储到各自的变量中。

注意这里没有代码;你应该尝试自己解决这些问题。

答案 2 :(得分:0)

preg_split会帮助你。

正式文件http://php.net/manual/en/function.preg-split.php

示例

echo "<pre>";
print_r(preg_split('#(?<=\d)(?=[a-z])#i', "abc567"));
echo "</pre>";

以上将推出。

Array
(
    [0] => abc
    [1] => 567
)

答案 3 :(得分:0)

试试这个

$str="abc567";
preg_match_all('/(\d)|(\w)/', $str, $matches);
$numbers = implode($matches[1]);
$characters = implode($matches[2]);

答案 4 :(得分:0)

如果您想要使用单独变量中的所有数字和所有字母,可以使用:

$your_var = "abc567";
$str_letters = preg_replace('/[a-z]/', "", $your_var);
$str_numbers = preg_replace('/[0-9]/', "", $your_var);

请注意,如果$ your_var = abc7567d64h num = 756764 letters = abcdh