PHP bijak menggunakan fungsi untuk menggantikan subrentetan yang diberikan dengan tanda * (tidak sensitif huruf besar-besaran)

青灯夜游
Lepaskan: 2023-03-12 06:04:01
asal
3289 orang telah melayarinya

Dalam artikel sebelumnya, kami telah memperkenalkan kaedah penggantian rentetan, yang boleh menggantikan subrentetan yang diberikan dengan nilai lain​​​dalam cara yang sensitif huruf besar/kecil, anda boleh klik pada pautan untuk menyemak → ". Bagaimana untuk menggunakan PHP untuk menggantikan subrentetan yang diberikan dengan nilai lain Gantikan rentetan stator dengan * (sensitif huruf besar-kecil) 》. Kali ini kami akan memperkenalkan kepada anda kaedah lain untuk menggantikan subrentetan yang diberikan dalam rentetan Anda boleh merujuknya jika anda memerlukannya.

Di atas kami memperkenalkan kaedah menggunakan fungsi str_replace() untuk menggantikan subrentetan yang diberikan Kaedah ini sensitif huruf besar-besaran (iaitu sensitif huruf besar-besaran), selagi terdapat aksara dalam rentetan yang kesnya tidak. tidak memenuhi keperluan , tidak boleh sama persis dengan subrentetan yang diberikan, maka tiada penggantian akan dilakukan.

Tetapi kadangkala apabila melakukan penggantian rentetan, ia tidak perlu terlalu ketat dan kes aksara boleh diabaikan. Hari ini kami akan memperkenalkan kaedah yang tidak sensitif terhadap kes aksara penggantian.

Mari kita lihat contoh berikut:

<?php
$str = &#39;hello,world,Hello,World&#39;;
$replace = &#39;*&#39;;
$search1 = &#39;hello&#39;;
$search2 = &#39;world&#39;;
echo str_ireplace($search1, $replace, $str)."<br>";
echo str_ireplace($search2, $replace, $str)."<br>";
?>
Salin selepas log masuk

Melihat kod di atas, kita perlu menukar subrentetan "hello,world,Hello,World" dan " hello" digantikan dengan world simbol. Walau bagaimanapun, terdapat dua jenis rentetan $str yang memenuhi keperluan: satu padanan lengkap (konsisten kes) dan satu lagi padanan tidak lengkap (kes tidak konsisten). *

Tetapi kerana kami menggunakan fungsi str_ireplace(), yang boleh mengabaikan kes, ia akan menggantikan dua subrentetan "hello" dan "Hello", "world" dan "world" dalam rentetan $str yang bertemu keperluan. "Dunia" digantikan dengan *. Jadi hasil keluarannya ialah:

PHP bijak menggunakan fungsi untuk menggantikan subrentetan yang diberikan dengan tanda * (tidak sensitif huruf besar-besaran)

Bukankah ia sangat mudah. ​​Mari kita lihat fungsi str_ireplace() ini. Fungsi

boleh menggantikan beberapa aksara dalam rentetan yang mengabaikan huruf besar-besaran Parameter yang diterima oleh fungsi ini adalah sama dengan fungsi str_replace() Tiga parameter pertama diperlukan (tidak boleh ditinggalkan), dan parameter terakhir str_ireplace($search,$replace,$string,$count) ditinggalkan (tetapi jika ditetapkan, bilangan penggantian boleh diperolehi). $count

Parameter

boleh menerima pembolehubah untuk mengira bilangan penggantian; jika parameter ini ditetapkan, anda boleh mengetahui jumlah penggantian yang telah dilakukan secara keseluruhan. $count

<?php
header("Content-Type: text/html;charset=utf-8");    //设置字符编码
$str = &#39;hello,world,Hello,World&#39;;
$replace = &#39;*&#39;;
$search1 = &#39;hello&#39;;
$search2 = &#39;world&#39;;
echo str_ireplace($search1, $replace, $str, $i)."<br>";
echo  "一共执行了  $i"." 次替换<br><br>";

echo str_ireplace($search2, $replace, $str, $i)."<br>";
echo  "一共执行了  $i"." 次替换<br><br>";
?>
Salin selepas log masuk
Hasil keluaran:

PHP bijak menggunakan fungsi untuk menggantikan subrentetan yang diberikan dengan tanda * (tidak sensitif huruf besar-besaran)

Penjelasan:

Kerana str_ireplace() dan str_replace( ) fungsi Kedua-duanya secara langsung memberikan subrentetan yang perlu diganti, jadi kedua-dua fungsi boleh digunakan untuk menggantikan aksara Cina.

<?php
header("Content-Type: text/html;charset=utf-8");    //设置字符编码
$str = &#39;你好,欢迎来到这里!&#39;;
$replace = &#39;*&#39;;
$search1 = &#39;你好&#39;;
$search2 = &#39;欢迎&#39;;
echo str_ireplace($search1, $replace, $str)."<br>";
echo str_replace($search2, $replace, $str)."<br>";
?>
Salin selepas log masuk
Hasil keluaran:

PHP bijak menggunakan fungsi untuk menggantikan subrentetan yang diberikan dengan tanda * (tidak sensitif huruf besar-besaran)

Rentetan Cina tulen hampir sama, tetapi rentetan campuran Cina dan Inggeris adalah peka huruf besar-kecil, anda boleh pilih yang mana satu untuk digunakan mengikut keperluan anda.

<?php
header("Content-Type: text/html;charset=utf-8");    //设置字符编码
$str = &#39;你好,欢迎来到PHP中文网!&#39;;
$replace = &#39;这里&#39;;
$search1 = &#39;PHP中文网&#39;;
$search2 = &#39;php中文网&#39;;
echo str_ireplace($search1, $replace, $str)."<br>";
echo str_replace($search2, $replace, $str)."<br>";
?>
Salin selepas log masuk
Hasil keluaran:

PHP bijak menggunakan fungsi untuk menggantikan subrentetan yang diberikan dengan tanda * (tidak sensitif huruf besar-besaran)

Itu sahaja jika anda ingin tahu perkara lain, anda boleh klik ini. → →

tutorial video php

Akhir sekali, saya mengesyorkan anda membaca kursus klasik "

Pemprosesan Rentetan PHP (Edisi Sutra Jantung Gadis Jade) ", ianya percuma~ datang dan belajar!

Atas ialah kandungan terperinci PHP bijak menggunakan fungsi untuk menggantikan subrentetan yang diberikan dengan tanda * (tidak sensitif huruf besar-besaran). 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