php

Penggunaan Fungsi preg_match() di PHP

Penggunaan Fungsi preg_match() di PHP

Ekspresi reguler adalah pola tertentu yang dapat digunakan untuk mencocokkan, mencari, dan mengganti string tertentu dalam data teks. Ini adalah fitur yang kuat dari bahasa pemrograman apa pun. Ini terutama digunakan untuk melakukan berbagai jenis validasi formulir, seperti memvalidasi email, memeriksa format telepon, memvalidasi bidang nama pengguna dan kata sandi dari formulir login, dll. Konten teks tertentu dapat dicari dan diganti menggunakan pola ekspresi reguler. Itu juga disebut regex atau RegExp. Berbagai jenis simbol digunakan untuk mendefinisikan pola regex.

Banyak fungsi bawaan yang ada di PHP untuk ekspresi reguler. fungsi preg_match() adalah salah satunya. Fungsi ini digunakan untuk mencocokkan pola tertentu dalam data string. Bagaimana fungsi preg_match() dapat digunakan dalam PHP untuk melakukan berbagai tugas dijelaskan dalam tutorial ini.

Sintaksis:

Int atau false preg_match (string $pattern, string $subject [, array &$matches = null [, int $flags = 0 [, int $offset = 0]]])

Fungsi ini dapat mengambil lima argumen. Argumen pertama, $pola, adalah wajib, yang mendefinisikan pola untuk pencocokan. Argumen kedua, $subjek, adalah wajib, dan berisi data string di mana pola akan diterapkan. Argumen ketiga, $pertandingan, adalah opsional dan mengembalikan array berdasarkan kecocokan. Argumen keempat, $bendera, adalah opsional, yang berisi berbagai jenis nilai bendera berdasarkan kecocokan. Argumen kelima, $penghapusan, adalah opsional, dan dapat digunakan untuk menentukan posisi awal pencarian.

Contoh 1: Cocokkan pola dengan cara yang peka huruf besar-kecil dan tidak peka huruf besar-kecil

Contoh berikut menunjukkan penggunaan fungsi preg_match() untuk mencocokkan string secara case-sensitive dan case-insensitive. Buat file PHP dengan skrip berikut:.

Di sini, tiga pola digunakan untuk diterapkan dalam tiga fungsi preg_match(). Pola pertama, '/Suka/', digunakan untuk mencocokkan string dengan cara yang peka huruf besar-kecil. Pola kedua, '/Suka/', digunakan untuk mencocokkan string dengan cara yang peka huruf besar-kecil. Pola ketiga, 'Seperti saya', digunakan untuk mencocokkan string dengan cara yang tidak peka huruf besar-kecil. pola_pencarian() fungsi didefinisikan dalam skrip untuk menggunakan fungsi preg_match() untuk pencocokan, dan ia mencetak pesan berdasarkan nilai yang dikembalikan dari fungsi ini.

//Menentukan teks
$teks = "Saya suka PHP. Saya suka JavaScript juga.";
//Tentukan tiga jenis pola
$pattern1 = '/Suka/';
$pattern2 = '/suka/';
$pattern3 = '/Suka/i';
//Menentukan fungsi untuk mencari pola dalam teks
fungsi search_pattern($pattern, $string)

if(preg_match($pattern, $string))
echo "Hasil pencarian: Kecocokan ditemukan untuk pola - $pattern
";
lain
echo "Hasil pencarian: Kecocokan tidak ditemukan untuk pola - $pattern
";

//Mencetak teks asli original
echo "Teks aslinya adalah: $teks
";
//Panggil fungsi tiga kali untuk tiga pola
search_pattern($pattern1, $teks);
search_pattern($pattern2, $teks);
search_pattern($pattern3, $teks);
?>

Keluaran:

Output berikut akan muncul setelah menjalankan skrip dari server:. Baris pertama menunjukkan teks tempat pola dicari were. Baris kedua menunjukkan output dari pola pertama. Baris ketiga menunjukkan output dari pola kedua. Baris keempat menunjukkan output dari pola ketiga.

Contoh 2: Validasi URL

Contoh berikut menunjukkan cara untuk memvalidasi alamat URL menggunakan fungsi preg_match(). Buat file PHP dengan skrip berikut:.

Nilai URL ditetapkan dalam variabel $url untuk pengujian. '@^(?:https://)?([^/]+)@i' string digunakan sebagai pola dalam fungsi preg_match() untuk memeriksa apakah alamat URL valid atau tidak. Jika valid, maka nama host dan nama domain akan dicetak, jika tidak, pesan kesalahan akan dicetak.

//Tentukan URL
$url = "https://www.linuxhint.com";
//Tentukan pola untuk memvalidasi URL
$pola ='@^(?:https://)?([^/]+)@i';
//Periksa URL valid atau tidak
if(preg_match($pattern, $url, $matches1))

//Cetak pesan sukses
echo "URL valid.
";
//Mencetak array yang berisi nilai kecocokan
echo "Nilai array adalah: ";
print_r($cocok1);
//Ambil dan cetak nilai host
$host = $matches1[1];
gema "
Nama host adalah: $host";
//Cari nama domain dari nilai host
preg_match('/[^.]+\.[^.]+$/', $host, $matches2);
gema "
Nama domainnya adalah: $matches2[0]";

lain

//Cetak pesan kesalahan
echo "URL Tidak Valid".";

?>

Keluaran:

Output berikut akan muncul setelah menjalankan skrip dari server:. URL yang diberikan dalam skrip valid. Jadi, output menunjukkan nilai $matches, nama host URL, dan nama domain URL.

Contoh 3: Pola pencarian dengan nilai flag dan offset

Contoh berikut menunjukkan penggunaan nilai flag dan offset dalam fungsi preg_match(). Buat file PHP dengan skrip berikut:.

Tiga pola digunakan dalam skrip untuk tiga jenis pencocokan. Dalam fungsi preg_match() pertama, '/(bangla)(desh)/' digunakan sebagai pola dan nilai flag, PREG_OFFSET_CAPTURE digunakan. Nilai-nilai dari $pertandingan variabel akan dicetak berdasarkan output dari fungsi preg_match() pertama. Dalam fungsi preg_match() kedua, '/(bangla)(glad)*(desh)/i', digunakan sebagai pola dan nilai flag, PREG_UNMATCHED_AS_NULL digunakan. Jika ada bagian dari pola yang tidak cocok maka nilai NULL akan disimpan dalam array. Nilai-nilai dari $pertandingan variabel akan dicetak berdasarkan output dari fungsi preg_match() kedua. Dalam fungsi preg_match() ketiga, '/glad/' digunakan sebagai pola, nilai flag, PREG_OFFSET_CAPTURE digunakan dan 3 digunakan sebagai nilai offset. Nilai-nilai dari $pertandingan variabel akan dicetak berdasarkan output dari fungsi preg_match() ketiga.

//Menentukan nilai teks
$teks = "Bangladesh";
//Tentukan tiga jenis pola
$pattern1 = '/(bangla)(desh)/i';
$pattern2 = '/(bangla)(senang)*(desh)/i';
$pattern3 = '/senang/';
//Menggunakan tanda PREG_OFFSET_CAPTURE
preg_match($pattern1, $teks, $matches, PREG_OFFSET_CAPTURE);
gema "
";
print_r($cocok);
gema "

";
//Menggunakan tanda PREG_UNMATCHED_AS_NULL
preg_match($pattern2, $teks, $cocok, PREG_UNMATCHED_AS_NULL);
gema "
";
print_r($cocok);
gema "

";
//Menggunakan tanda PREG_OFFSET_CAPTURE dan nilai offset
preg_match($pattern3, $teks, $matches, PREG_OFFSET_CAPTURE, 3);
gema "
";
print_r($cocok);
gema "
";
?>

Keluaran:

Output berikut akan muncul setelah menjalankan skrip dari server:.

Kesimpulan

Penggunaan fungsi preg_match() telah dijelaskan dalam tutorial ini menggunakan beberapa contoh. Penggunaan argumen yang berbeda dari fungsi ini juga telah ditunjukkan di sini. Pembaca akan dapat menggunakan fungsi ini dengan benar dalam skrip mereka setelah membaca tutorial ini.

Cara merekam dan streaming sesi permainan Anda di Linux
Dulu, bermain game hanya dianggap sebagai hobi, namun seiring berjalannya waktu, industri game mengalami pertumbuhan yang sangat pesat baik dari segi ...
Game Terbaik untuk Dimainkan dengan Pelacakan Tangan
Oculus Quest baru-baru ini memperkenalkan ide hebat pelacakan tangan tanpa pengontrol. Dengan jumlah permainan dan aktivitas yang terus meningkat yang...
Cara Menampilkan Overlay OSD di Aplikasi dan Game Linux Layar Penuh
Memainkan game layar penuh atau menggunakan aplikasi dalam mode layar penuh bebas gangguan dapat memutus Anda dari informasi sistem yang relevan yang ...