Rumah pembangunan bahagian belakang tutorial php Padanan corak menggunakan PHP dan Ungkapan Biasa

Padanan corak menggunakan PHP dan Ungkapan Biasa

Jun 13, 2023 pm 03:29 PM
php padanan corak regular expressions

Pemadanan corak ialah operasi yang sangat biasa dalam bahasa pengaturcaraan moden. Ia digunakan untuk mencari bahagian rentetan yang sepadan dengan peraturan tertentu. Dalam PHP, ungkapan biasa sangat mudah untuk padanan corak. Dalam artikel ini, kami akan membincangkan padanan corak menggunakan PHP dan ungkapan biasa.

Pertama, kita perlu memahami apa itu ungkapan biasa. Ungkapan biasa ialah bahasa yang digunakan untuk padanan corak. Ia boleh digunakan untuk mencari, menggantikan, mengesahkan dan mengekstrak bahagian tertentu rentetan. Ungkapan biasa terdiri daripada beberapa aksara dan aksara khas. Aksara ini digunakan untuk memadankan rentetan.

Dalam PHP, kita boleh menggunakan fungsi preg_match() untuk melaksanakan padanan ungkapan biasa. Berikut ialah contoh:

$string = "This is a test string.";
$pattern = "/test/i";
preg_match($pattern, $string, $matches);
print_r($matches);
Salin selepas log masuk

Dalam contoh di atas, $string ialah rentetan untuk dicari. $pattern ialah ungkapan biasa. Dalam contoh ini, kami menggunakan "/test/i" sebagai ungkapan biasa. Ini bermakna kami sedang mencari "ujian" dalam rentetan, di mana "i" bermaksud tidak sensitif huruf besar-besaran. Akhir sekali, $matches ialah tatasusunan yang mengandungi semua hasil padanan. Dalam kes ini, ia sepatutnya mengeluarkan:

Array
(
    [0] => test
)
Salin selepas log masuk

Jika tiada rentetan yang sepadan ditemui, tatasusunan $matches akan kosong.

Sekarang, mari kita lihat aksara paling asas dalam ungkapan biasa.

  • .: Padankan mana-mana aksara
  • ^: Padankan permulaan rentetan
  • $: Padankan hujung rentetan
  • [] : Padankan Mana-mana aksara dalam kurungan
  • [a-z]: Padankan mana-mana aksara antara a - z
  • 1: Padankan apa-apa kecuali a - z Mana-mana aksara di luar
  • (): Padan dengan ungkapan dalam kurungan

Berikut ialah contoh untuk memadankan poskod (kod pos):

$string = "12345-6789";
$pattern = "/^[0-9]{5}(-[0-9]{4})?$/";
preg_match($pattern, $string, $matches);
print_r($matches);
Salin selepas log masuk

Dalam contoh di atas, kami menggunakan beberapa aksara berbeza:

  • ^: mewakili permulaan rentetan
  • [0-9]{5}: sepadan dengan 5 nombor
  • (-[0-9]{4})? : Memadankan tanda sempang pilihan dan 4 digit
  • $ : Menunjukkan penghujung rentetan

Ungkapan biasa ini boleh sepadan dengan zip kod dalam format berikut:

  • 12345
  • 12345-6789

Kini, kami telah mempelajari pengetahuan yang mencukupi, anda boleh mula menulis skrip yang lebih kompleks . Berikut ialah contoh untuk mencari semua fail PHP dalam folder dan menyenaraikan semua fungsi dan kaedah di dalamnya:

$dir = "./";
$files = scandir($dir);

foreach ($files as $file) {
    if (preg_match("/.php$/", $file)) {
        $content = file_get_contents($file);
        preg_match_all("/(function|public function|private function|protected function|method|public method|private method|protected method) ([a-zA-Z0-9_]+)/", $content, $matches);
        echo "In $file:
";
        foreach ($matches[2] as $match) {
            echo "- $match()
";
        }
    }
}
Salin selepas log masuk

Dalam contoh di atas, kami telah menggunakan fungsi preg_match_all(). Fungsi ini serupa dengan fungsi preg_match(), kecuali ia mencari semua padanan dan bukannya padanan pertama sahaja. Kami juga menggunakan ungkapan biasa untuk memadankan semua fungsi dan kaedah. Dalam contoh ini, kami hanya akan menyenaraikan fungsi dan kaedah awam, peribadi dan dilindungi.

Kami telah melihat cara melakukan padanan corak menggunakan PHP dan ungkapan biasa. Teknik ini sangat berkuasa dan boleh digunakan untuk pelbagai tujuan, daripada padanan rentetan ringkas kepada pengesahan data yang kompleks. Jika anda belum mencuba menggunakan ungkapan biasa lagi, kami menggalakkan anda meluangkan sedikit masa untuk mempelajarinya dan mula menggunakannya, kerana ia boleh membantu anda menulis kod yang lebih cekap dan fleksibel.


  1. a-z

Atas ialah kandungan terperinci Padanan corak menggunakan PHP dan Ungkapan Biasa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 membawa beberapa ciri baharu, peningkatan keselamatan dan peningkatan prestasi dengan jumlah penamatan dan penyingkiran ciri yang sihat. Panduan ini menerangkan cara memasang PHP 8.4 atau naik taraf kepada PHP 8.4 pada Ubuntu, Debian, atau terbitan mereka

Tarikh dan Masa CakePHP Tarikh dan Masa CakePHP Sep 10, 2024 pm 05:27 PM

Untuk bekerja dengan tarikh dan masa dalam cakephp4, kami akan menggunakan kelas FrozenTime yang tersedia.

Muat naik Fail CakePHP Muat naik Fail CakePHP Sep 10, 2024 pm 05:27 PM

Untuk mengusahakan muat naik fail, kami akan menggunakan pembantu borang. Di sini, adalah contoh untuk muat naik fail.

Bincangkan CakePHP Bincangkan CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP ialah rangka kerja sumber terbuka untuk PHP. Ia bertujuan untuk menjadikan pembangunan, penggunaan dan penyelenggaraan aplikasi lebih mudah. CakePHP adalah berdasarkan seni bina seperti MVC yang berkuasa dan mudah difahami. Model, Pandangan dan Pengawal gu

Pengesah Mencipta CakePHP Pengesah Mencipta CakePHP Sep 10, 2024 pm 05:26 PM

Pengesah boleh dibuat dengan menambah dua baris berikut dalam pengawal.

Pembalakan CakePHP Pembalakan CakePHP Sep 10, 2024 pm 05:26 PM

Log masuk CakePHP adalah tugas yang sangat mudah. Anda hanya perlu menggunakan satu fungsi. Anda boleh log ralat, pengecualian, aktiviti pengguna, tindakan yang diambil oleh pengguna, untuk sebarang proses latar belakang seperti cronjob. Mengelog data dalam CakePHP adalah mudah. Fungsi log() disediakan

Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP Dec 20, 2024 am 11:31 AM

Kod Visual Studio, juga dikenali sebagai Kod VS, ialah editor kod sumber percuma — atau persekitaran pembangunan bersepadu (IDE) — tersedia untuk semua sistem pengendalian utama. Dengan koleksi sambungan yang besar untuk banyak bahasa pengaturcaraan, Kod VS boleh menjadi c

Panduan Ringkas CakePHP Panduan Ringkas CakePHP Sep 10, 2024 pm 05:27 PM

CakePHP ialah rangka kerja MVC sumber terbuka. Ia menjadikan pembangunan, penggunaan dan penyelenggaraan aplikasi lebih mudah. CakePHP mempunyai beberapa perpustakaan untuk mengurangkan beban tugas yang paling biasa.

See all articles