php 正規

WBOY
WBOYオリジナル
2016-06-23 13:47:001256ブラウズ

.(点)-(負) 以外の数値をすべて空の
に置き換えます
例: -234.fgfg23 -234.23 に置き換えます
234.3/3 を 234.33 に置き換えます


ディスカッションに返信します (解決された計画)

echo preg_replace('/[^.-\d]+/', '', '-234.fgfg23');

echo preg_replace('/[^.-\d]+/', '', '-234.fgfg23');




/[^.-d]+/ なぜです。

[] でエスケープすることはできません

エスケープした場合、 \d は文字の後に d 文字が続きます


echo preg_replace('/[^.-\d]+/', '', '-234.fgfg23');

この段落をテストするときに、アンダースコアの前にエスケープ文字がない場合、エラーが報告されるのはなぜですか。

警告: preg_replace(): コンパイルに失敗しました: D:xampphtdocs2.php の 46 行目のオフセット 5 にある文字クラスの範囲が無効です
追加するだけですか?
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。