我将以下内容剥离为字母数字a-z0-9
:
echo preg_replace("/[^[:alnum:][:space:]]/u", '', $text);
工作正常。我如何允许它保持浮点数,因此10.9
不会被剥离为109
。我尝试了/[^[:alnum:][:space:][.]]/u
,但是没有用。
应不去除浮点数,但如果它不是十进制数,则应去除点。因此,etc.
应该剥离为etc
,但是1.5
应该保持为1.5
。
答案 0 :(得分:2)
您可以使用环视检查点之前是否没有数字,或者点之后没有数字,然后删除它:
echo preg_replace("/[^[:alnum:][:space:].]|(?<!\d)\.|\.(?!\d)/u", '', $text);