Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk menapis rentetan dalam php untuk mendapatkan nombor sahaja
Kaedah mendapatkan: 1. Gunakan pernyataan for untuk menggelung melalui rentetan, gunakan fungsi is_numeric() dalam badan gelung untuk mengekstrak aksara berangka dan gunakan operator ".=" untuk menyambungnya menjadi yang baharu rentetan. 2. Gunakan ungkapan biasa dan gunakan pernyataan "preg_replace("/[^0-9]/", "", $str)".
Persekitaran pengendalian tutorial ini: sistem Windows 7, PHP versi 7.1, komputer DELL G3
Kaedah 1: Gunakan is_numeric () Fungsi
<?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]; } } echo $result; } } $str = '0我是123456一段测试的字789符串0'; findNum($str); ?>
menggunakan gelung for untuk melintasi rentetan $str dan menggunakan fungsi is_numeric() untuk menentukan sama ada $str[$i]
ialah aksara angka. Fungsi is_numeric() boleh mengesan sama ada pembolehubah ialah nombor atau rentetan angka.
Gunakan is_numeric($str[$i]) dalam badan gelung untuk menentukan sama ada aksara $str[$i] ialah aksara angka, jika ya, keluarkan dan gunakan ".= ” disambung ke dalam subrentetan digital.
Lihat output:
01234567890
Kaedah 2: Gunakan fungsi preg_replace()
<?php $str ='0我是123456一段测试的字789符串0'; $result = preg_replace("/[^0-9]/", "", $str); echo $result; ?>
Pembelajaran yang disyorkan: "Tutorial Video PHP"
Atas ialah kandungan terperinci Bagaimana untuk menapis rentetan dalam php untuk mendapatkan nombor sahaja. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!