web-dev-qa-db-ja.com

文字列からすべての文字を取り除き、数字を残す

ヘイ、私はこのような文字列を持っています:

v8gn5.8gnr4nggb58gng.g95h58g.n48fn49t.t8t8t57

数字(および.s)だけを残してすべての文字を削除したい

これを行う方法はありますか?ビルド済みの関数はありますか?

ありがとう

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

数字または。で構成されていない部分文字列を置き換えます。何もなしで。

67
Don
preg_replace('/[^0-9.]/', '', $string);
6
Ionuț G. Stan
$input = 'some str1ng 234';
$newString = preg_replace("/[^0-9.]/", '', $input);
1
Juraj Blahunka

好奇心を満たすために、提案された回答の速度について尋ねました。 preg_replace speed optimisation / に示すように、str_replace()よりもpreg_replace()を使用する方が(はるかに)高速です。

したがって、代わりにstr_replace()を使用することをお勧めします。

0
Veger