从字符串中获取多个数字

时间:2012-11-14 23:10:56

标签: php string dynamic numbers extraction

我有一个表单,其中一个输入名称的数字与我数据库中的信息相对应。我需要提取数字并将它们设置为变量,以便我可以使用它们来存储和检索数据库中的数据。

示例:rdobtn_1_15或qtybx_9_82

那么数字将是动态的并且会发生变化所以我需要一些可以获得数字的东西,无论它们是“20”还是“5327”

3 个答案:

答案 0 :(得分:2)

$input = 'rdobtn_1_15'
$matches = null;
$returnValue = preg_match('/_(\\d+)_(\\d+)/', $input, $matches);

您的比赛将存储为

array (
  0 => '_1_15',
  1 => '1',
  2 => '15',
)

所以你的号码可以通过

访问
echo $matches[1] // 1
echo $matches[2] // 15

供参考:Regular Expressions

答案 1 :(得分:1)

如果这是你想要实现的,你可以从字符串中提取数字:

preg_match_all('!\d+!', $your_string, $matches);
print_r($matches);

答案 2 :(得分:0)

$array = explode('_', $string);

$element = $array[5]; // or whichever element you want