PHP Regular Expression to remove all characters other than digits and periods
I'm trying to use preg_replace
to remove all characters from a string except for numeric and period characters.
I can remove everything but numbers, however how can I make an exception for the '.' period ch开发者_如何转开发aracter.
Can anyone help me out?
Try this:
$clean = preg_replace('/[^\\d.]+/', '', $str);
But you could also use [^0-9.]
if you’re more familiar with that. Note that the .
doesn’t need to be escaped inside the character class declaration as it’s not a special character inside there (only ]
, \
and depending on the context also ^
and -
).
Remove everything that matches
[^0-9.]
e.g.
$output = preg_replace("/[^0-9.]/", "", $input);
精彩评论