Maison  >  Article  >  développement back-end  >  Comment détecter si une chaîne ne contient que des lettres en php

Comment détecter si une chaîne ne contient que des lettres en php

青灯夜游
青灯夜游original
2022-04-22 19:48:364195parcourir

En php, vous pouvez utiliser la fonction preg_match() avec l'expression régulière "/^[a-zA-Zs]+$/" pour détecter si une chaîne ne contient que des lettres. La syntaxe est "preg_match("/^[. a-zA-Zs] +$/",string)"; si la valeur de retour est 1, elle ne contient que des lettres, et si elle renvoie 0, elle contient d'autres caractères.

Comment détecter si une chaîne ne contient que des lettres en php

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

php détecte si la chaîne ne contient que des lettres En d'autres termes : déterminez si la chaîne est constituée de pures lettres anglaises

Dans. php, vous pouvez utiliser la fonction preg_match() avec une expression régulière pour vérifier.

Expression régulière utilisée : "/^[a-zA-Zs]+$/"

La fonction preg_match() peut rechercher et faire correspondre des chaînes en fonction d'expressions régulières. La syntaxe de la fonction est la suivante :

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

La description du paramètre est la suivante :

  • $ pattern : le modèle à rechercher, c'est-à-dire l'expression régulière modifiée ;
  • $subject : la chaîne à rechercher ;
  • $matches : paramètres facultatifs (type tableau), si $matches est fourni, ce sera rempli pour les résultats de recherche. $matches[0] contient le texte correspondant au modèle complet, $matches[1] contient le texte correspondant au premier sous-groupe de capture, et ainsi de suite
  • $flags : paramètre facultatif, $flags peut être défini sur PREG_OFFSET_CAPTURE , si ; cette balise est passée, pour chaque occurrence d'une correspondance, le décalage de la chaîne (par rapport à la chaîne cible) sera ajouté au retour ;
  • $offset : paramètre facultatif, utilisé pour spécifier le décalage par rapport à la chaîne cible à quelle position commencez la recherche (l'unité est l'octet). La fonction

preg_match() peut renvoyer le nombre de correspondances pour $pattern, sa valeur sera 0 fois (pas de correspondance) ou 1 fois, car preg_match() arrêtera de chercher après la première correspondance.

Si la valeur de retour est 1, cela signifie uniquement des lettres, et si la valeur de retour est 0, elle inclut d'autres caractères.

Exemple :

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);  
echo preg_match("/^[a-zA-Z\s]+$/","abcddfkj")."<br>";
echo preg_match("/^[a-zA-Z\s]+$/","ab12kj");
?>

Comment détecter si une chaîne ne contient que des lettres en php

Ce type de sortie n'est pas très bon. Personnalisons une fonction et exécutons un processus s'il n'y a que des lettres, il retournera vrai, sinon il retournera faux

function is_english($str)
{
    if(preg_match("/^[a-zA-Z\s]+$/",$str)){
        return true;
    }
    return false;
}

Appel. la fonction pour déterminer si la chaîne est composée d'une composition de lettres anglaises pures

var_dump(is_english(&#39;php.cn&#39;)); 
// bool(false)   含有标点符号所以返回 false  
var_dump(is_english(&#39;phpcn&#39;));  
// bool(true)
var_dump(is_english(&#39;phpcn123&#39;)); 
// bool(false)   含有123
var_dump(is_english(&#39;欢迎来到这里&#39;)); 
// bool(false)   都是中文

Comment détecter si une chaîne ne contient que des lettres en php

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