Maison >développement back-end >Problème PHP >Comment utiliser des expressions régulières en php pour faire correspondre uniquement les caractères chinois
En php, vous pouvez utiliser l'expression régulière "/[x{4e00}-x{9fff}]+/u" et la fonction preg_match_all() pour faire correspondre uniquement les caractères chinois, la syntaxe "preg_match_all("/[x{ 4e00}- x{9fff}". La fonction preg_match_all() recherchera tous les résultats dans la chaîne pouvant correspondre à l'expression régulière. Avec "/[x{4e00}-x{9fff}]+/u", vous pouvez filtrer la chaîne et obtenir uniquement les caractères chinois.
L'environnement d'exploitation de ce tutoriel : système windows7, version PHP8, ordinateur DELL G3
En php, vous pouvez utiliser l'expression régulière "/[x". {4e00}-x{9fff} ]+/u
" et la fonction preg_match_all() pour faire correspondre uniquement les caractères chinois. La fonction /[x{4e00}-x{9fff}]+/u
”和preg_match_all()函数来只匹配汉字。
preg_match_all()函数会搜索字符串中所有可以和正则表达式匹配的结果
preg_match_all(pattern,subject,matches,flags,offset)
参数说明如下:
preg_match_all() 函数可以返回 pattern 的匹配次数(可能是 0),如果发生错误则返回 FALSE。
preg_match_all()函数配合正则表达式“
preg_match_all() recherchera tous les résultats dans la chaîne qui peuvent correspondre au caractère normal. expression/[x{4e00}-x{9fff}]+/u
<?php header("Content-type:text/html;charset=utf-8"); $str = "欢迎4546来到php这里。zblog,我的?#$%^天呀&())*(&^"; echo $str; preg_match_all("/[\x{4e00}-\x{9fff}]+/u","$str",$arr); var_dump($arr); ?>
La description du paramètre est la suivante : pattern : le modèle à rechercher, c'est-à-dire l'expression régulière définie
subject : la chaîne à rechercher
matches : paramètre facultatif (multidimensionnel ; array), utilisé pour stocker tous les résultats correspondants, tri de tableau Spécifié par $flags; flags : paramètre facultatif, qui peut être utilisé en combinaison avec les balises suivantes (notez que PREG_PATTERN_ORDER et PREG_SET_ORDER ne peuvent pas être utilisés en même temps) :PREG_PATTERN_ORDER : Le résultat est trié comme $matches[0] pour enregistrer toutes les correspondances du modèle complet, $matches[1] enregistre toutes les correspondances du premier sous-groupe, et ainsi de suite
PREG_SET_ORDER : Le résultat est trié comme $ matches[0] contient toutes les correspondances (y compris les sous-groupes) obtenues par la première correspondance, $matches[ 1] est un tableau contenant toutes les correspondances (y compris les sous-groupes) trouvées dans la deuxième correspondance, et ainsi de suitePREG_OFFSET_CAPTURE : Si cet indicateur est passé , chaque correspondance trouvée sera renvoyée avec son décalage par rapport à la chaîne cible Shift. Notez que cela modifiera chaque élément de la chaîne de résultat de la correspondance dans $matches afin que le 0ème élément soit la chaîne du résultat de la correspondance et que le 1er élément soit le décalage de la. correspond à la chaîne de résultat dans le sujet.
offset : paramètre facultatif, $offset est utilisé pour lancer la recherche à partir de la position spécifiée dans la chaîne cible (l'unité est en octets). La fonctionpreg_match_all() peut renvoyer le nombre de. correspondances de modèle (éventuellement 0). Si une erreur se produit, FALSE sera renvoyé. La fonction
preg_match_all() peut être utilisée avec l'expression régulière "/[x{4e00}-x{9fff}] +/u
" pour filtrer la chaîne et obtenir uniquement les caractères chinois. caractère.
preg_match_all() stockera les caractères de fonction correspondants dans un tableau un par un (le tableau est spécifié par le troisième paramètre).
implode('',$arr[0])À ce stade, vous pouvez utiliser la fonction implode() pour diviser la valeur du résultat en une chaîne. 🎜
implode(separator,array)🎜🎜🎜🎜🎜Connaissances étendues : fonction implode()🎜🎜🎜La fonction implode() renvoie une chaîne composée d'éléments de tableau. 🎜rrreee🎜🎜🎜séparateur : facultatif. Spécifie ce qui est placé entre les éléments du tableau. La valeur par défaut est "" (chaîne vide). 🎜🎜🎜🎜tableau : obligatoire. Tableaux à combiner en chaînes. 🎜🎜🎜🎜Valeur de retour : renvoie une chaîne composée d'éléments de tableau. 🎜🎜Il existe également une fonction avec la même fonction que la fonction implode() : join(). La fonction join() est un alias de la fonction implode(). 🎜🎜Apprentissage recommandé : "🎜Tutoriel vidéo PHP🎜"🎜
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!