首頁  >  文章  >  後端開發  >  php字串怎麼只留下數字

php字串怎麼只留下數字

青灯夜游
青灯夜游原創
2022-09-02 20:15:043251瀏覽

2種方法:1、用for遍歷字串,在迴圈體中將數字字元拼接成子字串,語法「for($i=0;$i<字串長度;$i ) {if(is_numeric($str[$i])){$r.=$str[$i];}}”;2、用preg_replace()配合正規表達式來過濾字符,提取數字字符,語法“preg_replace ("/[^0-9]/", "", $str)」。

php字串怎麼只留下數字

本教學操作環境:windows7系統、PHP8.1版、DELL G3電腦

php字串只留下數字的兩種方法

方法1:使用for語句is_numeric() “.=”字串拼接
##

<?php
header("content-type:text/html;charset=utf-8");
function findNum($str) {
	$str = trim($str);
	if (empty($str)) {
		echo &#39;&#39;;
	}else{
		$result = &#39;&#39;;
		for ($i = 0; $i < strlen($str); $i++) {
			if (is_numeric($str[$i])) {
				$result .= $str[$i];
			}
		}
		var_dump($result);
	}
}
$str = &#39;0我是123456一段测试的字789符串0&#39;;
echo "原字符串:";
var_dump($str);
echo "过滤其他字符串后:";
findNum($str);
?>

分析一下上面的程式碼:

  • 利用for迴圈遍歷字串$str

  • #在迴圈體中使用

    is_numeric($ str[$i])判斷該​​$str[$i]字元是不是數字字元;

  • 如果是則取出來,使用「

    .=」拼接成數字子字串。

看看輸出結果:

php字串怎麼只留下數字

#方法2、使用preg_replace()函數

<?php
$str =&#39;0我是123456一段测试的字789符串0&#39;;
$result = preg_replace("/[^0-9]/", "", $str);
echo $result;
?>

分析一下上面的關鍵程式碼:


preg_replace("/[^0-9]/", "", $str)的意思是符合除了0 ~9間的數字以外的字符,並將這些字符替換為空字符,即刪除這些字符即可。那就只剩下數字字元了,所以輸出結果為:

php字串怎麼只留下數字

我們來簡單了解preg_replace()函數

 preg_replace() 函數可以執行正規表示式的搜尋和替換,是一個強大的字串替換處理函數,該它的語法格式為「

preg_replace($pattern, $replacement, $subject [, $limit = -1 [, &$count ]])”,表示搜尋subject 中符合pattern 的部分, 以replacement 替換;可選參數limit 用於設定最大可替換次數(預設值是-1,可無限制)。

推薦學習:《

PHP影片教學

以上是php字串怎麼只留下數字的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn