我正在将RegEx与在线刮刀结合使用,以便从网站中提取数据。刮刀允许您使用Reguar表达式仅提取部分字符串。
我想要提取的字符串如下所示:
€ 1.250.000 k.k.
€ 359.000 k.k.
€ 89.000 v.o.n.
我想得到的结果如下:
1250000
359000
80000
结果需要存储为数字。
我现在使用表达式[\d.]+
,但这包括句点。如果我从表达式中删除句点,则不会在句点之后取数字。
有关于此的任何想法吗?
N.B。我使用的刮刀是import.io
答案 0 :(得分:1)
有两种方法,我使用 JavaScript 和 PHP 语言解释它们。
Remove all non-numeric values,其余的就是你所需要的:
<强> JavaScript的:强>
var str = "€ 1.250.000 k.k.";
str = str.replace(/\D+/g, '');
document.write(str);
<强> PHP:强>
$str = "€ 1.250.000 k.k.";
echo preg_replace("/\D+/", "", $str);
从字符串中提取所有数字并将它们连接在一起以产生预期的数字:
<强> JavaScript的:强>
var str = "€ 1.250.000 k.k.";
str = str.match(/\d/g).join("");
document.write(str);
<强> PHP:强>
$matches = array();
$str = "€ 1.250.000 k.k.";
$str = preg_match_all('/\d/', $str, $matches);
$str = implode("", $matches[0]);
echo $str;