Position actuelle: Accueil> Derniers articles> Stripos et explorer pour implémenter la recherche de mots multi-clés

Stripos et explorer pour implémenter la recherche de mots multi-clés

M66 2025-05-17

Dans PHP, Stripos et Exploit sont deux fonctions très utiles qui peuvent être utilisées en combinaison pour implémenter les fonctions de recherche floue. La fonction StripOS est utilisée pour effectuer des recherches de chaînes insensibles à la casse, tandis que l'exploit est utilisé pour diviser une chaîne en un tableau. Ces deux fonctions peuvent implémenter efficacement la recherche floue de plusieurs mots clés.

Idées

Supposons que nous ayons une chaîne qui doit savoir si elle contient plusieurs mots clés. Si un mot-clé correspond, il est considéré comme un succès. Nous pouvons utiliser Explorer pour diviser le mot-clé en un tableau, puis parcourir chaque mot-clé dans le tableau et utiliser des stripos pour déterminer si le mot-clé existe dans la chaîne cible.

Implémentation de code

 <?php
// Supposons que nous ayons un texte qui doit être recherché
$text = "Accueillir m66.net,Nous fournissons un service de haute qualité。";

// Définir plusieurs mots clés
$keywords = "m66.net,qualité,Servir";

// utiliser explode Diviser les mots clés en tableaux
$keywordArray = explode(",", $keywords);

// Initialiser un tableau vide,Mots-clés utilisés pour stocker la correspondance
$foundKeywords = [];

// Traverser chaque mot-clé,utiliser stripos Effectuer une recherche floue
foreach ($keywordArray as $keyword) {
    // utiliser stripos Trouver des mots clés(Cas insensible au cas)
    if (stripos($text, $keyword) !== false) {
        // Si trouvé,Enregistrer les mots clés correspondants
        $foundKeywords[] = $keyword;
    }
}

// Mots-clés correspondant à la sortie
if (!empty($foundKeywords)) {
    echo "Les mots clés trouvés sont: " . implode(", ", $foundKeywords);
} else {
    echo "Aucun mot-clé n&#39;a été trouvé。";
}
?>

expliquer

  1. Target String ( $ text ): c'est le texte que nous recherchons. Supposons que cette chaîne est le contenu d'une page Web ou d'un autre texte qui nécessite une recherche de mots clés.

  2. Mots-clés String ( $ Mots-clés ): Cette chaîne contient plusieurs mots clés séparés par des virgules.

  3. Fonction exploit () : nous utilisons Expoitant (",", $ keywords) pour diviser la chaîne de mots-clés en un tableau de clé de clavier par les virgules.

  4. Fonction stripos () : StripOS est utilisé pour vérifier si le texte de chaîne cible $ contient un certain mot-clé. Si vous êtes inclus, renvoyez l'indice de localisation du mot-clé (s'il n'est pas trouvé, false ). Nous utilisons ! == false pour vérifier s'il correspond.

  5. Sortie des résultats : Si un mot-clé correspondant est trouvé, tous les mots clés trouvés sont sortis; S'il n'est pas trouvé, il n'y a pas de mot-clé correspondant.

Scénarios d'application pratiques

Cette méthode peut être utilisée dans les scénarios suivants:

  • Recherche de contenu de l'article : Trouvez plusieurs mots clés dans le contenu de l'article pour afficher la pièce qui intéresse l'utilisateur.

  • Analyse du texte de la page Web : analysez plusieurs mots clés dans le contenu de la page Web pour déterminer s'il contient des termes commerciaux ou techniques spécifiques.

  • Analyse du journal : Trouvez plusieurs codes d'erreur ou messages d'avertissement dans le journal du serveur.

Suggestions d'optimisation

  • Sensibilité à la caisse : Stripos est insensible à la casse par défaut. Si vous devez effectuer des recherches sensibles à la casse, vous pouvez utiliser STRPOS .

  • Améliorer les performances : lorsqu'il existe un grand nombre de mots clés, chaque élément du tableau des mots clés peut être prétraité, tel que la suppression des espaces et des caractères spéciaux, pour améliorer l'efficacité de correspondance.