


Comment valider la saisie de caractères spéciaux à l'aide d'expressions régulières PHP
L'expression régulière PHP est un outil très puissant qui peut nous aider à vérifier l'exactitude des entrées de l'utilisateur. Parmi eux, il est également très courant de vérifier la saisie de caractères spéciaux, car les caractères spéciaux peuvent provoquer des erreurs dans notre programme ou des risques de sécurité. Cet article explique comment utiliser les expressions régulières PHP pour valider la saisie de caractères spéciaux.
- Vérifier un seul caractère spécial
Si nous devons vérifier si la chaîne saisie par l'utilisateur contient un caractère spécial, nous pouvons utiliser la fonction preg_match, qui peut déterminer si une chaîne est conforme à une certaine règle basée sur un caractère régulier expression. Par exemple, si nous devons vérifier si la chaîne saisie par l'utilisateur contient le symbole $, nous pouvons utiliser le code suivant :
$input = 'username$'; if (preg_match('/$/', $input)) { echo '字符串中包含$符号'; } else { echo '字符串中不包含$符号'; }
Dans le code ci-dessus, le $ dans l'expression régulière /$/</code > signifie $ Le symbole lui-même, pas une référence à la variable. Si la correspondance réussit, cela signifie que la chaîne $str contient le symbole $. Bien entendu, nous pouvons également vérifier d'autres caractères spéciaux, tels que des points d'interrogation, des astérisques, etc. <code>/$/
中的$表示$符号本身,而不是变量的引用。如果匹配成功,则表示$str字符串中包含了$符号。当然,我们也可以验证其它特殊字符,比如问号、星号等等。
- 验证多个特殊字符
如果我们需要同时验证多个特殊字符,可以使用正则表达式的字符类(character class)和元字符(metacharacter)。字符类用于表示一个字符集,而元字符则表示匹配一个字符的特殊规则。例如,我们需要验证用户输入的字符串中是否包含了$、#、@三个特殊字符中的任何一个,可以使用如下代码:
$input = 'username$#1@'; if (preg_match('/[$#@]/', $input)) { echo '字符串中包含$、#、@中的任意一个'; } else { echo '字符串中不包含$、#、@中的任何一个'; }
在上面的代码中,字符类[$#@]
表示一个字符集,其中$、#、@表示需要匹配的字符。如果匹配成功,则表示$str字符串中包含了$、#、@中的任意一个。
- 验证特殊字符的数量限制
有时候,我们需要验证用户输入的字符串中特殊字符的数量是否在一定范围内。可以使用正则表达式的限定符(quantifier)来实现。例如,我们需要验证用户输入的字符串中$符号的数量是否在1到3之间,可以使用如下代码:
$input = 'user$name$'; if (preg_match('/($){1,3}/', $input)) { echo '字符串中包含1到3个$符号'; } else { echo '字符串中不包含1到3个$符号'; }
在上面的代码中,正则表达式/($){1,3}/
中的{1,3}
表示$符号数量的限制,其中1表示至少匹配1个$符号,3表示最多匹配3个$符号。
- 排除特定字符
有时候,我们需要验证用户输入的字符串中是否包含了某些特殊字符,但又不希望其中包含某些特定的字符。可以使用正则表达式的否定字符类(negated character class)实现。例如,我们需要验证用户输入的字符串中是否包含$、#、@三个特殊字符,但不希望其包含&符号,可以使用如下代码:
$input = 'username$#1@'; if (preg_match('/[^&][$#@]/', $input)) { echo '字符串中包含$、#、@中的任意一个,但不包含&符号'; } else { echo '字符串中不符合要求'; }
在上面的代码中,字符类[^&]
- Vérifier plusieurs caractères spéciaux
Si nous devons vérifier plusieurs caractères spéciaux en même temps, nous pouvons utiliser la classe de caractères et le métacaractère des expressions régulières. Les classes de caractères sont utilisées pour représenter un jeu de caractères, tandis que les métacaractères représentent des règles spéciales pour faire correspondre un caractère. Par exemple, nous devons vérifier si la chaîne saisie par l'utilisateur contient l'un des trois caractères spéciaux $, # et @. Vous pouvez utiliser le code suivant :
rrreee🎜 Dans le code ci-dessus, la classe de caractères[. $# @]
représente un jeu de caractères, où $, #, @ représentent les caractères qui doivent correspondre. Si la correspondance réussit, cela signifie que la chaîne $str contient l'un des $, # et @. 🎜- 🎜Vérifier la limite du nombre de caractères spéciaux🎜🎜🎜Parfois, nous devons vérifier si le nombre de caractères spéciaux dans la chaîne saisie par l'utilisateur se situe dans une certaine plage. Ceci peut être réalisé en utilisant des quantificateurs d’expressions régulières. Par exemple, si nous devons vérifier si le nombre de symboles $ dans la chaîne saisie par l'utilisateur est compris entre 1 et 3, nous pouvons utiliser le code suivant : 🎜rrreee🎜Dans le code ci-dessus, l'expression régulière
/( $){1, <code>{1,3}
dans 3}/ indique la limite du nombre de symboles $, où 1 signifie correspondre à au moins 1 symbole $ et 3 signifie correspondre à 3 symboles $. 🎜- 🎜Exclure des caractères spécifiques🎜🎜🎜Parfois, nous devons vérifier si la chaîne saisie par l'utilisateur contient des caractères spéciaux, mais nous ne voulons pas qu'elle contienne des caractères spécifiques. Ceci peut être réalisé en utilisant la classe de caractères négatifs des expressions régulières. Par exemple, nous devons vérifier si la chaîne saisie par l'utilisateur contient les trois caractères spéciaux $, # et @, mais nous ne voulons pas qu'elle contienne le symbole &. Vous pouvez utiliser le code suivant : 🎜rrreee🎜Dans le. au-dessus du code, la classe de caractères
[^&]
représente n'importe quel caractère à l'exception de l'esperluette, où ^ représente la négation. Si la correspondance réussit, cela signifie que la chaîne $str contient l'un des $, # et @, mais ne contient pas le symbole &. 🎜🎜Résumé🎜🎜L'utilisation d'expressions régulières PHP pour vérifier la saisie de caractères spéciaux peut améliorer la sécurité et la robustesse de nos programmes. Dans le développement réel, nous pouvons choisir des expressions régulières appropriées pour vérifier la saisie de caractères spéciaux selon les besoins. Il convient de noter que même si les expressions régulières sont puissantes, elles ont aussi leurs limites et doivent être utilisées avec prudence. 🎜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!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

PHP 8.4 apporte plusieurs nouvelles fonctionnalités, améliorations de sécurité et de performances avec une bonne quantité de dépréciations et de suppressions de fonctionnalités. Ce guide explique comment installer PHP 8.4 ou mettre à niveau vers PHP 8.4 sur Ubuntu, Debian ou leurs dérivés. Bien qu'il soit possible de compiler PHP à partir des sources, son installation à partir d'un référentiel APT comme expliqué ci-dessous est souvent plus rapide et plus sécurisée car ces référentiels fourniront les dernières corrections de bogues et mises à jour de sécurité à l'avenir.

Visual Studio Code, également connu sous le nom de VS Code, est un éditeur de code source gratuit – ou environnement de développement intégré (IDE) – disponible pour tous les principaux systèmes d'exploitation. Avec une large collection d'extensions pour de nombreux langages de programmation, VS Code peut être c

JWT est une norme ouverte basée sur JSON, utilisée pour transmettre en toute sécurité des informations entre les parties, principalement pour l'authentification de l'identité et l'échange d'informations. 1. JWT se compose de trois parties: en-tête, charge utile et signature. 2. Le principe de travail de JWT comprend trois étapes: la génération de JWT, la vérification de la charge utile JWT et l'analyse. 3. Lorsque vous utilisez JWT pour l'authentification en PHP, JWT peut être généré et vérifié, et les informations sur le rôle et l'autorisation des utilisateurs peuvent être incluses dans l'utilisation avancée. 4. Les erreurs courantes incluent une défaillance de vérification de signature, l'expiration des jetons et la charge utile surdimensionnée. Les compétences de débogage incluent l'utilisation des outils de débogage et de l'exploitation forestière. 5. L'optimisation des performances et les meilleures pratiques incluent l'utilisation des algorithmes de signature appropriés, la définition des périodes de validité raisonnablement,

Ce tutoriel montre comment traiter efficacement les documents XML à l'aide de PHP. XML (Language de balisage extensible) est un langage de balisage basé sur le texte polyvalent conçu à la fois pour la lisibilité humaine et l'analyse de la machine. Il est couramment utilisé pour le stockage de données et

Liaison statique (statique: :) implémente la liaison statique tardive (LSB) dans PHP, permettant à des classes d'appel d'être référencées dans des contextes statiques plutôt que de définir des classes. 1) Le processus d'analyse est effectué au moment de l'exécution, 2) Recherchez la classe d'appel dans la relation de succession, 3) il peut apporter des frais généraux de performance.

Une chaîne est une séquence de caractères, y compris des lettres, des nombres et des symboles. Ce tutoriel apprendra à calculer le nombre de voyelles dans une chaîne donnée en PHP en utilisant différentes méthodes. Les voyelles en anglais sont a, e, i, o, u, et elles peuvent être en majuscules ou en minuscules. Qu'est-ce qu'une voyelle? Les voyelles sont des caractères alphabétiques qui représentent une prononciation spécifique. Il y a cinq voyelles en anglais, y compris les majuscules et les minuscules: a, e, i, o, u Exemple 1 Entrée: String = "TutorialSpoint" Sortie: 6 expliquer Les voyelles dans la chaîne "TutorialSpoint" sont u, o, i, a, o, i. Il y a 6 yuans au total

Quelles sont les méthodes magiques de PHP? Les méthodes magiques de PHP incluent: 1. \ _ \ _ Construct, utilisé pour initialiser les objets; 2. \ _ \ _ Destruct, utilisé pour nettoyer les ressources; 3. \ _ \ _ Appel, gérer les appels de méthode inexistants; 4. \ _ \ _ GET, Implémentez l'accès à l'attribut dynamique; 5. \ _ \ _ SET, Implémentez les paramètres d'attribut dynamique. Ces méthodes sont automatiquement appelées dans certaines situations, améliorant la flexibilité et l'efficacité du code.

PHP et Python ont chacun leurs propres avantages et choisissent en fonction des exigences du projet. 1.Php convient au développement Web, en particulier pour le développement rapide et la maintenance des sites Web. 2. Python convient à la science des données, à l'apprentissage automatique et à l'intelligence artificielle, avec syntaxe concise et adaptée aux débutants.
