2010-01-22 96 views

回答

46
$str = preg_replace('/[^0-9.]+/', '', $str); 

更换不包括数字或字符串。一无所有。

6
preg_replace('/[^0-9.]/', '', $string); 
+0

摆脱点。 – Robin 2010-01-22 14:52:32

+0

罗宾,没有必要。我已经在发布之前对它进行了测试,并确定。 – 2010-01-22 14:54:14

+1

@Robin,如果它在方括号[]以外,则需要跳过这段时间。在方括号内的时间段不被视为特殊字符 – 2010-01-22 14:58:39

1
$input = 'some str1ng 234'; 
$newString = preg_replace("/[^0-9.]/", '', $input); 
0

为了满足我的好奇心,我问有关建议答复的速度和如图preg_replace speed optimisation/它是(多)更快地使用str_replace()preg_replace()

所以你可能想用str_replace()来代替。

+0

但在这种情况下,你不能真正使用'str_replace()',除非你想硬编码所有不是数字的字符。 – 2010-01-25 09:53:57

+1

@kemp,嗯......是的,这是真的。那会太多了:) – Veger 2010-01-25 10:17:12

相关问题