Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah Saya Boleh Mengekstrak Nama Kelas yang Mengandungi \'postclass\' daripada Fail CSS Menggunakan PHP?

Bagaimanakah Saya Boleh Mengekstrak Nama Kelas yang Mengandungi \'postclass\' daripada Fail CSS Menggunakan PHP?

Patricia Arquette
Patricia Arquetteasal
2024-10-26 04:18:271008semak imbas

How Can I Extract Class Names Containing

Menghuraikan Fail CSS dengan PHP: Pendekatan Programatik

Untuk manipulasi CSS lanjutan, menghuraikannya dengan pengaturcaraan adalah penting. PHP menawarkan set alat yang mantap untuk penghuraian CSS dan artikel ini mengupas teknik khusus untuk mengekstrak nama kelas yang mengandungi subrentetan tertentu.

Masalahnya:

Diberikan CSS fail dengan berbilang pengisytiharan kelas, matlamatnya adalah untuk mendapatkan semula tatasusunan nama kelas yang termasuk "kelas pos" dalam nama mereka.

Penyelesaian:

preg_match_all() PHP fungsi boleh menghuraikan ungkapan biasa dalam rentetan. Berikut ialah ungkapan biasa tersuai yang menyelesaikan tugas ini:

<code class="php">/(#[a-z0-9]*?\ .?postclass.*?)\s?\{/g</code>

Reex ini menangkap sebarang pengisytiharan CSS bermula dengan cincang (#), diikuti dengan mana-mana gabungan aksara abjad angka, titik (.) dan subrentetan "kelas pos." Ruang putih dan kurung kurawal menandakan permulaan set peraturan.

Kod:

<code class="php">function parse($file) {
    $css = file_get_contents($file);
    preg_match_all( '/(?ims)([a-z0-9\s\.\:#_\-@,]+)\{([^\}]*)\}/', $css, $arr);
    $result = array();
    foreach ($arr[0] as $i => $x){
        $selector = trim($arr[1][$i]);
        $selectors = explode(',', trim($selector));
        foreach ($selectors as $strSel) {
            if (strpos($strSel, 'postclass') !== false) {
                $result[] = $strSel;
            }
        }
    }
    return $result;
}</code>

Penggunaan:

<code class="php">$arrayClasses = parse('cssfile.css');
print_r($arrayClasses); // Outputs: ['#content.postclass-subcontent', '#content2.postclass-subcontent2']</code>

Dengan menggunakan pendekatan ini, pembangun boleh mengekstrak nama kelas tertentu daripada fail CSS berdasarkan corak, membolehkan manipulasi CSS boleh disesuaikan dalam skrip PHP.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengekstrak Nama Kelas yang Mengandungi \'postclass\' daripada Fail CSS Menggunakan PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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