使用PHP的preg从字符串中提取2组数字?

时间:2009-12-02 20:56:24

标签: php pcre

这是一些PHP代码:

$myText = 'ABC #12345 (2009) XYZ';

$myNum1 = null;

$myNum2 = null;

如何将$myText#中的第一组数字添加到$myNum1,将$myText中的第二组数字添加到{{1}之间进入()。我该怎么做?

2 个答案:

答案 0 :(得分:2)

preg_match('/#(\d+).*\((\d+)\)/', $myText, $matches);
$myNum1 = $matches[1];
$myNum2 = $matches[2];

假设你有类似的东西:

“东西......#123123 stuff(456456)”

会给你 $ myNum1 = 123123 $ myNum2 = 456456

答案 1 :(得分:0)

如果您的输入字符串格式为“123#456”,则可以执行

$tempArray = explode("#", $input);
if (sizeof($tempArray) != 2) {
    echo "OH NO! Something bad happened!";
}
$value1 = intval($tempArray[0]);
$value2 = intval($tempArray[1]);
echo "Result: " . ($value1 + $value2);