从字符串php中提取数字

时间:2015-02-16 06:59:08

标签: php

我有一个字符串:“Суспензиядляинъекций0,5мл,1,0мл,5мл” 这里的浮点数除以逗号,逗号也可以显示为经典的单词分隔符。我应该得到输出中的所有数字: 0,5; 1,0;五 我尝试过这个:

$form = $d->drugForm;
preg_match_all('!\d+(?:\.\d+)?!', $form, $matches);

但似乎是它跳过逗号,因此在输出中我得到0,1,5

3 个答案:

答案 0 :(得分:2)

Regexp应该是:

$re = "/(\\d+,?\\d*)/";
$str = "Суспензия для инъекций 0,5 мл, 1,0 мл, 5 мл, 12,1234";

preg_match_all($re, $str, $matches);

DEMO

答案 1 :(得分:0)

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

答案 2 :(得分:0)

$re = "/(\d+(,)?(\d+)?)/";
$str = "Суспензия для инъекций 0,5 мл, 1,0 мл, 5 мл, 12,1234";

preg_match_all($re, $str, $matches);