Maison >développement back-end >Problème PHP >Comment conserver uniquement les lettres anglaises en php

Comment conserver uniquement les lettres anglaises en php

青灯夜游
青灯夜游original
2022-04-28 19:52:572967parcourir

En php, preg_match_all() peut être utilisé avec des expressions régulières pour filtrer les chaînes et ne conserver que les lettres anglaises ; la syntaxe est "preg_match_all("/[a-zA-Z]/u","$str",$arr) " , les lettres seront stockées dans le tableau et join() peut être utilisé pour convertir le tableau en chaîne.

Comment conserver uniquement les lettres anglaises en php

L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 7.1, ordinateur DELL G3

php ne retient que les lettres anglaises

Vous pouvez utiliser la fonction preg_match_all() avec des expressions régulières pour filtrer chaînes. Seules les lettres anglaises sont réservées. La fonction preg_match_all() stockera les caractères correspondants (lettres anglaises réservées) dans un tableau un par un (le tableau est spécifié par le troisième paramètre).

<?php
header("Content-type:text/html;charset=utf-8");
$str = "php.cn23v457zblog,?#$%^&())*(&^";
preg_match_all("/[a-zA-Z]/u","$str",$arr);
var_dump($arr);
?>

Comment conserver uniquement les lettres anglaises en phpComme vous pouvez le voir, le résultat est un tableau bidimensionnel.

Si vous souhaitez utiliser la fonction join() pour fusionner la valeur du résultat dans une chaîne, vous devez utiliser l'instruction suivante

join(&#39;&#39;,$arr[0])

Comment conserver uniquement les lettres anglaises en php

Description :

preg_match_all() - Effectuer une correspondance d'expression régulière globale Fonction preg_match_all() Vous pouvez rechercher tous les résultats dans la chaîne qui peuvent correspondre à l'expression régulière. Le format de syntaxe est le suivant :

preg_match_all($pattern, $subject [, &$matches [, $flags = PREG_PATTERN_ORDER [, $offset = 0 ]]])

La description du paramètre est la suivante :

$pattern : Le modèle à rechercher, qui est l'expression régulière définie 
  •  ; $subject : la chaîne à rechercher ;
  • $matches : paramètre facultatif (tableau multidimensionnel), utilisé pour stocker tous les résultats correspondants, le tri du tableau est spécifié via $flags ; $flags : paramètre facultatif, peut être utilisé en combinaison avec les flags suivants (notez que PREG_PATTERN_ORDER et PREG_SET_ORDER ne peuvent pas être utilisés en même temps) :
  • PREG_PATTERN_ORDER : les résultats sont classés de manière à ce que $matches[0] contienne toutes les correspondances pour le modèle complet, $matches[1] contienne toutes les correspondances pour le premier sous-groupe, et ainsi de suite.
  • PREG_SET_ORDER : les résultats sont triés car $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) obtenues par la deuxième correspondance, donc cette analogie.
    • PREG_OFFSET_CAPTURE : si cet indicateur est passé, chaque correspondance trouvée est renvoyée avec son décalage par rapport à la chaîne cible augmenté. Notez que cela modifiera chaque élément de chaîne de correspondance dans $matches en un élément où le 0ème élément est la chaîne de correspondance et le 1er élément est le décalage de la chaîne de correspondance 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 l'octet). La fonction
  • preg_match_all() peut renvoyer le nombre de correspondances pour $pattern (éventuellement 0), ou FALSE si une erreur se produit.
  • 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!

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