Maison >interface Web >tutoriel CSS >Comment extraire les noms de classe d'un fichier CSS avec une sous-chaîne spécifique en PHP ?

Comment extraire les noms de classe d'un fichier CSS avec une sous-chaîne spécifique en PHP ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-20 16:19:15515parcourir

How to Extract Class Names from a CSS File with a Specific Substring in PHP?

Analyse d'un fichier CSS avec PHP

En PHP, l'analyse d'un fichier CSS implique l'extraction et la manipulation de données spécifiques de son contenu. Une tâche courante consiste à identifier les noms de classe contenant une sous-chaîne particulière. Voici une solution utilisant une expression régulière :

function parseCSS($file) {
    $css = file_get_contents($file);
    preg_match_all('/#(?P<selector>\S+)\s+.postclass.*?\{.*?}/s', $css, $matches);
    return $matches['selector'] ?? [];
}

Cette fonction prend un chemin de fichier CSS en entrée, charge son contenu et recherche les lignes commençant par un hashtag (#), suivi de n'importe quel caractère (sauf des espaces ou des nouvelles lignes) et un point (.postclass). Les correspondances sont capturées dans le « sélecteur » nommé groupe de capture.

Pour utiliser la fonction, par exemple, pour extraire les noms de classe contenant « postclass » :

$cssFile = 'cssfile.css';
$classNames = parseCSS($cssFile);
print_r($classNames);

Cela affichera un tableau avec des éléments tels que :

["#content.postclass-subcontent", "#content2.postclass-subcontent2"]

Le résultat peut ensuite être utilisé pour manipuler ou analyser davantage les noms de classes CSS en fonction des exigences souhaitées.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn