您好,登錄后才能下訂單哦!
本文小編為大家詳細介紹“php字符串如何只留下數字”,內容詳細,步驟清晰,細節處理妥當,希望這篇“php字符串如何只留下數字”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。
2種方法:1、用for遍歷字符串,在循環體中將數字字符拼接成一個子串,語法“for($i=0;$i<字符串長度;$i++){if(is_numeric($str[$i])){$r.=$str[$i];}}”;2、用preg_replace()配合正則表達式來過濾字符,提取數字字符,語法“preg_replace("/[^0-9]/", "", $str)”。
本教程操作環境: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 ''; }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()函數
preg_replace() 函數可以執行正則表達式的搜索和替換,是一個強大的字符串替換處理函數,該它的語法格式為“preg_replace($pattern, $replacement, $subject [, $limit = -1 [, &$count]])
”,表示搜索 subject 中匹配 pattern 的部分, 以 replacement 進行替換;可選參數 limit 用于設置最大可替換次數(默認值是-1,可無限制)。
讀到這里,這篇“php字符串如何只留下數字”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。