web-dev-qa-db-ja.com

PHP数字以外のすべてを削除するコード

文字列からすべてを削除しようとしていますが、数字(0-9)だけを削除しようとしています。

これがうまくいくと思った。

echo preg_replace("[^0-9]","",'604-619-5135');

ただし、「604-619-5135」とエコーします。私は何が欠けていますか?

120
jeffkee

これを試して:

preg_replace('/[^0-9]/', '', '604-619-5135');

preg_replaceは、一般に/で始まるPCREを使用します。

243
Chris Eberle

これは将来の開発者向けです。これも試してみてください。簡単です

echo preg_replace('/\D/', '', '604-619-5135');
93
Navneil Naicker

パターンを区切り文字で囲む必要があります。通常、スラッシュ(/)が使用されます。これを試して:

echo preg_replace("/[^0-9]/","",'604-619-5135');
11
SBerg413