我想使用PHP preg_match
并删除所有价格结尾,但是我的正则表达式无法正常工作。
例如
1201203,00
123,123.23
12.23
10.00
10
进入
1201203
123,123
12
10
10
这是我到目前为止使用的正则表达式:
[,|.]\d{2}$
答案 0 :(得分:1)
您的正则表达式基本上是正确的,尽管您不需要字符集中的|
,但它应该只是[,.]
(或者您可以使用(\.|,)
)。因此,您只需使用preg_replace
:
$value = preg_replace('/[,.]\d{2}$/', '', $value);
例如:
$values = array('1201203,00', '123,123.23', '12.23', '10.00', '10');
foreach ($values as &$value) {
$value = preg_replace('/[,.]\d{2}$/', '', $value);
}
print_r($values);
输出:
Array (
[0] => 1201203
[1] => 123,123
[2] => 12
[3] => 10
[4] => 10
)