Position actuelle: Accueil> Derniers articles> Comment utiliser la fonction MB_EREGI_REPLACE pour remplacer les mots sensibles contenant des caractères en double octet dans le texte?

Comment utiliser la fonction MB_EREGI_REPLACE pour remplacer les mots sensibles contenant des caractères en double octet dans le texte?

M66 2025-06-11

Lorsque vous traitez avec des caractères chinois ou autres caractères multilinants, les fonctions de remplacement de chaîne ordinaires ne parviennent souvent pas à identifier et à traiter correctement les caractères en double octets, en particulier dans les scénarios de filtrage des mots sensibles. La fonction MB_EREGI_REPLACE en PHP est une fonction de remplacement ordinaire de plusieurs octets qui ignore le cas et gère correctement les caractères multi-octets, ce qui est idéal pour remplacer les mots sensibles contenant des caractères en double octet dans le texte.

Voici un exemple pour montrer comment utiliser MB_ERGI_REPLACE pour remplacer les mots sensibles dans le texte.

 <?php
// Définissez le codage de caractère interne sur UTF-8,Assurez-vous que la fonction de chaîne multicette fonctionne correctement
mb_internal_encoding("UTF-8");

// Texte original,Contient des mots chinois sensibles
$text = "Ceci est un texte de test,Comprend des mots sensibles:Mots sensibles et mauvais contenu。";

// Liste des mots sensibles(Soutenir les modèles d&#39;expression réguliers)
$sensitiveWords = [
    "Mots sensibles",
    "Mauvais contenu"
];

// 替换Mots sensibles为***
foreach ($sensitiveWords as $word) {
    // utilisermb_eregi_replaceEffectuer des remplacements insensibles à des cas
    $text = mb_eregi_replace($word, "***", $text);
}

echo $text;
?>

Résultats en cours:

 Ceci est un texte de test,Comprend des mots sensibles:***et***。

Remarques clés:

  1. Sécurité multi-octets
    MB_EREGI_REPLACE est une version insensible à la casse de MB_ERG_REPLACE , qui se spécialise dans le traitement des chaînes codées à plusieurs octets, évitant le problème que les expressions ordinaires ordinaires ne peuvent pas reconnaître les personnages chinois, japonais et autres.

  2. Paramètres de codage de caractère <br> Vous devez d'abord appeler MB_internal_encoding ("UTF-8") ou assurez-vous que le script est codé par défaut UTF-8 pour assurer l'utilisation normale des fonctions de chaîne multi-octets.

  3. Mot sensible correspondant <br> Soutenez les expressions régulières et peut définir de manière flexible les règles de mots sensibles, tels que la correspondance floue ou la correspondance en tige.

Application prolongée

S'il y a beaucoup de mots sensibles, vous pouvez lire la liste des mots sensibles à partir de la base de données ou du fichier, puis les remplacer dans une boucle. Il peut également être filtré en combinaison avec l'entrée utilisateur pour remplacer les mots sensibles en temps réel pour assurer la sécurité du contenu.