2 メソッド: 1. for を使用して文字列をトラバースし、ループ本体内の部分文字列に数字を結合します。構文は "for($i=0;$i
このチュートリアルの動作環境: Windows 7 システム、PHP バージョン 8.1、DELL G3 コンピューター
php 文字列数値を残す 2 つの方法のみ
方法 1: for ステートメントを使用する is_numeric() ".= string splicing
<?php header("content-type:text/html;charset=utf-8"); function findNum($str) { $str = trim($str); if (empty($str)) { echo ''; }else{ $result = ''; for ($i = 0; $i < strlen($str); $i++) { if (is_numeric($str[$i])) { $result .= $str[$i]; } } var_dump($result); } } $str = '0我是123456一段测试的字789符串0'; echo "原字符串:"; var_dump($str); echo "过滤其他字符串后:"; findNum($str); ?>
上記のコードを分析します。
for ループを使用して文字列 $str
ループ本体で is_numeric($ を使用します) str[$i])
$str[$i]
文字が数字かどうかを判断し、
そうであれば、それを取り出して使用します。 「.=
」はデジタル部分文字列に結合されます。
出力を見てください:
方法 2. preg_replace() 関数を使用します
<?php $str ='0我是123456一段测试的字789符串0'; $result = preg_replace("/[^0-9]/", "", $str); echo $result; ?>
上記のキー コードを分析します:
##preg_replace("/[^0-9]/", "", $str) は、0 文字以外の文字を除いて一致することを意味します。 ~9 までの数字を入力し、これらの文字をヌル文字に置き換えます。つまり、これらの文字を削除します。数字だけが残るので、出力結果は次のようになります。
preg_replace($pattern, $replacement, $subject [, $limit = -1 [, &$count ]])#」となります。 ##" は、件名内でパターンに一致する部分を検索し、それを置換で置換することを意味します。オプションのパラメーター制限は、置換の最大数を設定するために使用されます (デフォルト値は -1 で、無制限にすることができます)。 推奨学習: 「
以上がPHP文字列に数字だけを残す方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。