我想知道如何从字符串中删除“问号字符”:
8�901.9631
我想使用正则表达式。我正在尝试这个正则表达式:
#(\d+).(\d+(?:\.\d{1,4})?)#
但它不起作用。
答案 0 :(得分:4)
如果你知道所有其他字符都是数字和句号,你可以这样做:
$string = '8�901.9631';
$new_string = preg_replace('/[^\d\.]/', '', $string);
echo $new_string; //8901.9631
基本上这是删除所有不([^ ]
)数字(\d
)或句点(\.
)。
答案 1 :(得分:3)
如果您需要清理字符串并将其转换为float,则可以使用filter_var
方法,例如:
filter_var($string, FILTER_SANITIZE_NUMBER_FLOAT);