Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从unicode字符串中提取数字-PHP正则表达式_Php_Codeigniter_Preg Replace_Codeigniter 2 - Fatal编程技术网

从unicode字符串中提取数字-PHP正则表达式

从unicode字符串中提取数字-PHP正则表达式,php,codeigniter,preg-replace,codeigniter-2,Php,Codeigniter,Preg Replace,Codeigniter 2,我正在解析网页以获得网页奖。奖品包括一个卢比符号(₹). 所以我用preg_replace来提取数字 例如: $str='₹ 1,195 '; echo preg_replace("/[^0-9]/", '', $str); 输出为: 2091195 我尝试在上执行相同的代码 在那里我得到了正确的输出1195 我不明白问题出在哪里 提前感谢如果unicode字符串是UTF-8,您可以使用来告诉它应该使用UTF-8模式。如果不是,请先将其重新编码为UTF-8,然后使用修饰符 示例(): 如果我

我正在解析网页以获得网页奖。奖品包括一个卢比符号(₹).

所以我用preg_replace来提取数字

例如:

$str='₹ 1,195 ';
echo preg_replace("/[^0-9]/", '', $str);
输出为:

2091195
我尝试在上执行相同的代码

在那里我得到了正确的输出
1195

我不明白问题出在哪里


提前感谢

如果unicode字符串是UTF-8,您可以使用来告诉它应该使用UTF-8模式。如果不是,请先将其重新编码为UTF-8,然后使用修饰符

示例():


如果我在执行你的答案,它显示的是正确的输出,但它是动态加载的,此时它显示的是数字前209
$subject = '₹ 1,195 ';
$pattern = "/[^0-9]/u";
$result  = preg_replace($pattern, '', $subject);

echo $result;