0

このコードを変更して、指定された文字列から数字(既に存在する)と文字列を除くすべて を削除する方法: "."、"k "、"B "、および "M " ?

私が行っているのは、123k、124.7B、20M で指定された価格の解析です。

preg_replace("/\D/", "", "<td>Cost: 20b $, Sell for: 139k $</td>" );
4

1 に答える 1

0

これはトリックを行うはずです(問題で定義されているように):

preg_replace("/[^\.kBM0-9]/", "", "<td>Cost: 20b $, Sell for: 139k $</td>" );

特に文字列に複数の数字がある場合(例のように)、 preg_match の方が良いと思います:

preg_match_all("/([0-9]+(\.[0-9]+)?\s?[kBM]?)/", "<td>Cost: 20b $, Sell for: 139k $</td>", $match );

$matchすべての数値は、配列内で適切に分離されている必要があります。

于 2012-05-02T10:57:29.913 に答える