Rumah > pembangunan bahagian belakang > masalah PHP > Bagaimana untuk bertanya sama ada rentetan wujud dalam php

Bagaimana untuk bertanya sama ada rentetan wujud dalam php

PHPz
Lepaskan: 2023-04-24 14:41:07
asal
7212 orang telah melayarinya

Bahasa pengaturcaraan PHP ialah bahasa pengaturcaraan bahagian belakang yang sangat berkuasa dan popular yang digunakan secara meluas dalam pembangunan dan penyelenggaraan aplikasi web. Semasa proses pembangunan, kita selalunya perlu membuat pertanyaan dan memproses data, terutamanya pemprosesan data rentetan, seperti mencari sama ada subrentetan tertentu wujud dalam rentetan. Dalam artikel ini, kami akan memperkenalkan cara menggunakan PHP untuk pertanyaan rentetan, bertujuan untuk membantu pemula menyelesaikan masalah biasa ini dengan cepat.

1. Gunakan fungsi strpos() untuk menanyakan rentetan

PHP menyediakan banyak fungsi terbina dalam untuk memproses data rentetan, yang paling biasa digunakan ialah fungsi strpos(). Fungsi ini boleh digunakan untuk mencari sama ada rentetan mengandungi subrentetan dan mengembalikan kedudukan subrentetan dalam rentetan induk.

Berikut ialah sintaks asas untuk menggunakan fungsi strpos():

strpos($string, $target)
Salin selepas log masuk

Antaranya, $string mewakili rentetan yang akan ditemui dan $target mewakili rentetan sasaran yang akan dicari. Jika hasil yang dikembalikan adalah palsu, ini bermakna carian gagal, jika tidak, fungsi mengembalikan kedudukan rentetan sasaran dalam rentetan induk.

Ambil kod berikut sebagai contoh:

$str = "Hello, World!";
$needle = "World";

if (strpos($str, $needle) !== false) {
    echo "Found";
} else {
    echo "Not found";
}
Salin selepas log masuk

Kod ini akan menemui subrentetan $str dalam rentetan $needle, jika ditemui, keluarkan Found, jika tidak, keluarkan Not found. Dalam kes ini, output ialah Found kerana $needle memang wujud dalam rentetan $str.

2. Gunakan fungsi preg_match() untuk menanyakan rentetan

Selain menggunakan fungsi strpos(), PHP juga menyediakan fungsi preg_match() untuk padanan ungkapan biasa. Ungkapan biasa ialah alat yang boleh memadankan, menggantikan dan mengekstrak rentetan dengan tepat serta mempunyai keupayaan pemprosesan teks yang berkuasa.

Berikut ialah sintaks asas untuk menggunakan fungsi preg_match():

preg_match($pattern, $string, $matches)
Salin selepas log masuk

Antaranya, $pattern mewakili corak ungkapan biasa, $string mewakili rentetan yang perlu dipadankan, dan $matches mewakili pembolehubah Output untuk hasil yang sepadan. Fungsi preg_match() akan mengembalikan 1 jika perlawanan berjaya, jika tidak, ia akan mengembalikan 0.

Ambil contoh berikut:

$str = "I have 3 apples.";
$pattern = "/\d+/";
if (preg_match($pattern, $str, $matches)) {
    echo "Found number: " . $matches[0];
} else {
    echo "Not found";
}
Salin selepas log masuk

Kod ini akan menggunakan ungkapan biasa untuk mencari nombor dalam rentetan $str dan mengeluarkan hasilnya. Dalam kes ini, output ialah Found number: 3.

3. Gunakan fungsi strstr() untuk menanyakan rentetan

Selain menggunakan fungsi strpos(), PHP juga menyediakan fungsi lain untuk mencari subrentetan, seperti fungsi strstr(). Fungsi ini mencari kejadian pertama subrentetan dan mengembalikan subrentetan itu dan semua aksara yang mengikutinya.

Berikut ialah sintaks asas untuk menggunakan fungsi strstr():

strstr($string, $needle, $before_needle = false)
Salin selepas log masuk

Antaranya, $string mewakili rentetan yang hendak ditemui, $needle mewakili rentetan sasaran yang hendak dicari , dan $before_needle mewakili Sama ada hendak mengembalikan rentetan sebelum rentetan sasaran. Jika parameter ini benar, fungsi mengembalikan rentetan sebelum rentetan sasaran.

Ambil kod berikut sebagai contoh:

$str = "Hello, World!";
$needle = "Wor";

if (strstr($str, $needle)) {
    echo "Found";
} else {
    echo "Not found";
}
Salin selepas log masuk

Kod ini akan menemui subrentetan $str dalam rentetan $needle, jika ditemui, keluarkan Found, jika tidak, keluarkan Not found. Dalam kes ini, output ialah Found kerana $needle memang wujud dalam rentetan $str.

4. Gunakan fungsi substr_count() untuk menanyakan rentetan

PHP juga menyediakan fungsi substr_count() untuk mengira bilangan kali rentetan muncul dalam rentetan lain. Fungsi ini sangat mudah dan hanya memerlukan dua parameter rentetan.

Berikut ialah sintaks asas untuk menggunakan fungsi substr_count():

substr_count($string, $needle)
Salin selepas log masuk

Antaranya, $string mewakili rentetan yang akan ditemui dan $needle mewakili rentetan sasaran yang akan dicari. Fungsi ini mengembalikan bilangan kali subrentetan sasaran muncul dalam rentetan induk.

Ambil kod berikut sebagai contoh:

$str = "Hello, World!";
$needle = "l";
$count = substr_count($str, $needle);
echo "Found " . $count . " times";
Salin selepas log masuk

Kod ini akan mencari subrentetan $str dalam rentetan $needle dan mengeluarkan bilangan kejadian. Dalam kes ini, output ialah Found 3 times.

5. Gunakan fungsi stristr() untuk menanya rentetan (tidak peka huruf besar-kecil)

Akhir sekali, terdapat fungsi khas stristr(), yang hampir sama dengan fungsi strstr(), tetapi Tidak sensitif huruf besar. Ini bermakna bahawa tanpa mengira kes rentetan sasaran, fungsi akan dapat mencarinya dengan betul.

Berikut ialah sintaks asas untuk menggunakan fungsi stristr():

stristr($string, $needle)
Salin selepas log masuk

Antaranya, $string mewakili rentetan yang akan ditemui dan $needle mewakili rentetan sasaran yang akan dicari. Fungsi ini mengembalikan subrentetan sasaran dan semua aksara seterusnya. Jika rentetan sasaran tidak wujud, mengembalikan palsu.

Ambil kod berikut sebagai contoh:

$str = "Hello, World!";
$needle = "worL";

if (stristr($str, $needle)) {
    echo "Found";
} else {
    echo "Not found";
}
Salin selepas log masuk

Kod ini akan menemui subrentetan tidak sensitif huruf besar dan kecil $str dalam rentetan $needle dan jika ditemui, keluarkan Found , jika tidak, keluarkan Not found. Dalam kes ini, output ialah Found kerana $needle memang wujud dalam rentetan $str.

Kesimpulan

Di atas adalah beberapa kaedah menggunakan pertanyaan rentetan PHP Setiap kaedah mempunyai ciri tersendiri dan senario yang boleh digunakan. Anda boleh memilih untuk menggunakannya mengikut keperluan anda. Amalan pengaturcaraan yang baik ialah menggunakan pelbagai teknik bersama-sama untuk menyediakan kod yang lebih berkuasa dan fleksibel. Semoga artikel ini bermanfaat kepada anda, terima kasih kerana membaca!

Atas ialah kandungan terperinci Bagaimana untuk bertanya sama ada rentetan wujud dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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