Cara menggunakan peraturan biasa untuk mengecualikan aksara dalam rentetan dalam php

青灯夜游
Lepaskan: 2023-03-17 16:06:01
asal
5605 orang telah melayarinya

Dua kaedah: 1. Gunakan preg_replace() untuk melakukan carian dan penggantian ungkapan biasa Anda hanya perlu menggantikan aksara yang sepadan dalam rentetan dengan aksara kosong Sintaks "preg_replace(regular, " ", $str )". 2. Gunakan preg_match_all() untuk mencari semua hasil yang sepadan dengan ungkapan biasa dalam rentetan Setiap hasil yang sepadan akan diletakkan dalam tatasusunan $array Sintaks ialah "preg_match_all(regular, $str, $array);"

Cara menggunakan peraturan biasa untuk mengecualikan aksara dalam rentetan dalam php

Persekitaran pengendalian tutorial ini: sistem Windows 7, PHP versi 8.1, komputer DELL G3

Apakah itu ungkapan biasa Formula

ialah formula logik untuk operasi rentetan Ia menggunakan beberapa aksara dan gabungan aksara khusus yang telah ditetapkan untuk membentuk "rentetan biasa", "peraturan". string" digunakan untuk menyatakan logik penapisan untuk rentetan.

Ekspresi biasa membina corak dengan peraturan tertentu, membandingkannya dengan maklumat rentetan input dan menggunakannya dalam fungsi tertentu untuk mencapai operasi seperti padanan rentetan, carian, penggantian dan pembahagian.

php menggunakan ungkapan biasa untuk menapis rentetan

Dalam php, anda boleh menggunakan ungkapan biasa untuk menapis rentetan, mengecualikan (memadam) atau mengekstrak yang ditentukan watak.

Kaedah 1. Gunakan fungsi preg_replace()

Fungsi preg_replace() boleh melakukan carian dan penggantian ungkapan biasa dan merupakan fungsi pemprosesan penggantian rentetan yang berkuasa.

preg_replace($pattern, $replacement, $subject [, $limit = -1 [, &$count]])
Salin selepas log masuk
  • bermaksud mencari bahagian subjek yang sepadan dengan corak dan menggantikannya dengan penggantian had parameter pilihan digunakan untuk menetapkan bilangan penggantian maksimum (default nilai ialah -1, tidak terhad ).

Contoh:

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);  
$str =&#39;0我是123456一段测试的字789符串0&#39;;
echo "原字符串:".$str."<br>";
$result = preg_replace("/[^0-9]/", "", $str);
echo "过滤后字符串:".$result;
?>
Salin selepas log masuk

preg_replace("/[^0-9]/", "", $str) bermaksud memadankan aksara selain nombor antara 0~9 dan menggantikan aksara ini dengan aksara Kosong (iaitu padam aksara ini), maka hanya aksara angka yang tinggal:

Cara menggunakan peraturan biasa untuk mengecualikan aksara dalam rentetan dalam php

Kaedah 2: Gunakan fungsi preg_match_all()

The

preg_match_all() fungsi boleh mencari semua hasil dalam rentetan yang boleh memadankan ungkapan biasa Ia adalah fungsi yang melaksanakan padanan ungkapan biasa global. ungkapan

preg_match_all($pattern, $subject [, &$matches [, $flags = PREG_PATTERN_ORDER [, $offset = 0 ]]])
Salin selepas log masuk
  • $subjek Rentetan untuk dipadankan

  • $padanan Semua keputusan yang sepadan (tatasusunan)

  • preg_match_all() akan sepadan dengan semua keputusan Jika anda ingin menghentikan pemadanan selepas satu perlawanan yang berjaya, anda perlu menggunakan fungsi preg_match().

    Contoh:

bermaksud mencari subrentetan yang mengandungi hanya aksara angka antara

beberapa kali dalam rentetan $str, dan bandingkan hasil yang sepadan setiap kali Letakkannya dalam tatasusunan

. Mari kita gunakan
<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);  
$str =&#39;0我是123456一段测试的字789符串0&#39;;
echo "原字符串:".$str."<br><br>";

$result = &#39;&#39;;
preg_match_all(&#39;/\d+/&#39;,$str,$array);
echo "过滤结果:";
var_dump($array);


foreach($array as $arr){
	foreach($arr as $value){
		$result .= $value;
	}
}
echo "过滤后字符串:".$result;
?>
Salin selepas log masuk
untuk mengeluarkan tatasusunan ini dan lihat:

preg_match_all(&#39;/d+/&#39;,$str,$array)0~9$arrayvar_dump($array) Anda akan mendapati tatasusunan hasil

ialah tatasusunan dua dimensi, dan unsur-unsur yang mengandungi hasil yang sepadan ialah tatasusunan dalam. Jika anda ingin menyambung elemen ini menjadi rentetan, anda perlu menyusun dua peringkat gelung foreach:

Cara menggunakan peraturan biasa untuk mengecualikan aksara dalam rentetan dalam php

$array

Pembelajaran yang disyorkan: "
foreach($array as $arr){
	foreach($arr as $value){
		$result .= $value;
	}
}
echo "过滤后字符串:".$result;
Salin selepas log masuk
Tutorial Video PHP

Cara menggunakan peraturan biasa untuk mengecualikan aksara dalam rentetan dalam php

Atas ialah kandungan terperinci Cara menggunakan peraturan biasa untuk mengecualikan aksara dalam rentetan dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan