Maison > Article > développement back-end > Compétences en développement PHP (12) - Explication détaillée d'exemples de codes d'expressions régulières PHP couramment utilisées
L'expression régulière est une formule logique pour les opérations sur les chaînes. Elle utilise des caractères spécifiques prédéfinis et des combinaisons de ces caractères spécifiques pour former une "chaîne régulière". exprimer une logique de filtrage pour les chaînes. L'article de blog d'aujourd'hui est une compilation de certaines expressions régulières PHP couramment utilisées, afin que nous puissions effectuer une vérification de formulaire, une recherche de chaîne, etc. en développement à l'avenir.
1. Expression régulière pour faire correspondre les numéros de téléphone portable
Règles pour faire correspondre les numéros de téléphone portable :
Format de base des numéros de téléphone portable :
Les trois premiers les chiffres sont :
Mobile : 134-139 147 150-152 157-159 182 187 188
China Unicom : 130-132 155-156 185 186
Télécom : 133 153 180 189
Les huit derniers les chiffres sont : 0 à 9 Nombres
/** * @param $mobile string 需要验证的手机号 * @return string */ function pregMobile($mobile) { $rule = "/^((13[0-9])|147|(15[0-35-9])|180|182|(18[5-9]))[0-9]{8}$/A"; if (preg_match($rule, $mobile, $result)) { return $result; } else { return "不匹配!"; } }
2. Expression régulière pour l'adresse e-mail correspondante
Règle d'e-mail correspondante :
Le format de base de l'adresse e-mail est *****@** .**@ est précédé d'une lettre ou d'un chiffre majuscule ou minuscule, suivi de 0 à plusieurs lettres ou chiffres majuscules ou minuscules ou _ - La chaîne @ est précédée de 1 à plusieurs lettres ou chiffres majuscules ou minuscules. lettres ou chiffres. Chaîne suivie d'une chaîne de 1 à plusieurs lettres ou chiffres majuscules et minuscules.
/** * @param $email string 邮箱号 * @return string 结果 */ function pregEmail($email) { $rule = '/^[a-zA-Z0-9][a-zA-Z0-9._-]*\@[a-zA-Z0-9]+\.[a-zA-Z0-9\.]+$/A'; if (preg_match($rule, $email, $result)) { return $result; } else { return "不匹配!"; } }
3. Expressions régulières de numéro de téléphone correspondant
Règles de numéro de téléphone correspondant :
Indicatif régional : 3 à 5 chiffres, la plupart d'entre eux sont Quatre chiffres, trois chiffres pour Pékin (010) et Shanghai (021) et environ cinq chiffres pour le Tibet, qui peuvent être mis entre parenthèses ou non. S'il y a un indicatif régional entre parenthèses, il peut y avoir 0 à 1 entre les chiffres. l'indicatif régional et le numéro. Espace, si l'indicatif régional n'est pas mis entre parenthèses, il peut y avoir deux chiffres entre l'indicatif régional et le numéro -
Numéro : 7 à 8 chiffres, par exemple : (010) 12345678 ou ( 010)12345678 ou 010 12345678 ou 010 --12345678
/** * @param $telephone string 固话号码 * @return string */ function pregTelephone($telephone) { $rule = '/^(\(((010)|(021)|(0\d{3,4}))\)( ?)([0-9]{7,8}))|((010|021|0\d{3,4}))([- ]{1,2})([0-9]{7,8})$/A'; if (preg_match($rule, $telephone, $result)) { return $result; } else { return "不匹配!"; } }
4. Expression régulière pour l'URL correspondante
Règle d'URL correspondante :
Protocole:// nom de domaine (www/m/ wap...).name.suffix/filepath/filename
..../2017030629/165.html
protocole://nom de domaine (www/m/wap...).name .suffix/filepath/ Filename?Parameters
.../view.php?aid=165
Protocole://nom de domaine (www/m/wap...).name.suffix/filepath/filename/parameters
.../tags.php?/正则表达式/1/
Protocole : facultatif, composé de lettres majuscules et minuscules ; si le protocole n'est pas écrit, il ne doit pas exister://, sinon il doit exister://
Nom de domaine : doit exister, composé de lettres majuscules et minuscules
Nom : doit exister, caractères alphanumériques chinois
Suffixe : doit exister, composé de lettres majuscules et minuscules et .
Chemin du fichier : facultatif, composé de lettres majuscules et minuscules et de chiffres
Nom du fichier : facultatif Aucun, composé de lettres et de chiffres majuscules et minuscules
Paramètre : facultatif, s'il existe, il doit commencer par ?, c'est-à-dire que s'il existe, il doit y avoir des informations de paramètre correspondantes commençant par ?
/** * @param $url string url地址 * @return string 结果 */ function pregURL($url) { $rule = '/^(([a-zA-Z]+)(:\/\/))?([a-zA-Z]+)\.(\w+)\.([\w.]+)(\/([\w]+)\/?)*(\/[a-zA-Z0-9]+\.(\w+))*(\/([\w]+)\/?)*(\?(\w+=?[\w]*))*((&?\w+=?[\w]*))*$/'; if (preg_match($rule, $url, $result)) { return $result; } else { return "不匹配!"; } }
5. Expression régulière pour faire correspondre le numéro d'identification
Règle pour faire correspondre le numéro d'identification :
15 chiffres purs ou 18 chiffres purs ou 17 chiffres plus un x
/** * @param $idcard string 身份证号码 * @return string 结果 */ function pregIdcard($idcard) { $rule = '/^(([0-9]{15})|([0-9]{18})|([0-9]{17}x))$/'; if (preg_match($rule, $idcard, $result)) { return $result; } else { return "不匹配!"; } }
6. Expression régulière pour les codes postaux de zone correspondants
Règles de correspondance des codes postaux :
Six chiffres, le premier chiffre ne peut pas être 0
/** * @param $pos string 邮编号码 * @return string 结果 */ function pregPOS($pos) { $rule = '/^[1-9]\d{5}$/'; if (preg_match($rule, $pos, $result)) { return $result; } else { return "不匹配!"; } }
7. Expression régulière correspondant à l'adresse IP
Règles IP correspondantes :
**1.**2.**3.**4* *1 OK Il s'agit de 1 à 9 pour un chiffre, de 01 à 99 pour deux chiffres, de 001 à 255 pour trois chiffres. **2 et **3 peuvent être de 0 à 9 pour un chiffre, de 00 à 99 pour deux chiffres et. 000-255 pour trois chiffres. **4 peut être 1-9 pour un chiffre, 01-99 pour deux chiffres et 001-255 pour trois chiffres. Les quatre paramètres doivent exister.
/** * @param $ip string ip地址 * @return string 结果 */ function pregIP($ip) { $rule = '/^((([1-9])|((0[1-9])|([1-9][0-9]))|((00[1-9])|(0[1-9][0-9])|((1[0-9]{2})|(2[0-4][0-9])|(25[0-5]))))\.) ((([0-9]{1,2})|(([0-1][0-9]{2})|(2[0-4][0-9])|(25[0-5])))\.){2}(([1-9])|((0[1-9])|([1-9][0-9]))|(00[1-9])| (0[1-9][0-9])|((1[0-9]{2})|(2[0-4][0-9])|(25[0-5])))$/'; if (preg_match($rule, $ip, $result)) { return $result; } else { return "不匹配!"; } }
8. Expression régulière pour faire correspondre le format d'heure
Règle d'heure de correspondance :
Le format peut être : année-mois-jour heure:minute : Secondes, année-mois-jour heures : minutes, année-mois-jour : année : quatre chiffres commençant par 1 ou 2, mois : 1 chiffre commençant par 1 à 9 ; deux chiffres commençant par 0 ou 1, commençant par 0 Lorsque le le chiffre des unités est un nombre de 1 à 9, lorsqu'il commence par 1, le chiffre des unités est un nombre de 1 à 2. Jour : 1 chiffre est un nombre de 1 à 9 ; , commençant par 0 Lorsque le chiffre des unités est un nombre de 1 à 9, lorsqu'il commence par 1 ou 2, c'est un nombre de 0 à 9, lorsqu'il commence par 3, le chiffre des unités est 0 ou 1 heure : un chiffre de 0 à 9 ; 0 ou deux chiffres commençant par 1, le chiffre des unités est de 0 à 9 ; deux chiffres commençant par 2, le chiffre des unités est de 0 à 3 minutes : un chiffre de 0 à 9, deux chiffres commençant par 0 à 5 ; le chiffre des unités va de 0 à 9 ; les minutes : un chiffre de 0 à 9 ; deux chiffres allant de 0 à 5, chaque chiffre va de 0 à 9.
/** * @param $time string 时间 * @return string 结果 */ function pregTime($time) { $rule = '/^(([1-2][0-9]{3}-)((([1-9])|(0[1-9])|(1[0-2]))-)((([1-9])|(0[1-9])|([1-2][0-9])|(3[0-1]))))( ((([0-9])| (([0-1][0-9])|(2[0-3]))):(([0-9])|([0-5][0-9]))(:(([0-9])|([0-5][0-9])))?))?$/'; if (preg_match($rule, $time, $result)) { return $result; } else { return "不匹配!"; } }
9. Expression régulière correspondant au chinois sous utf8
/** * @param $chinese string utf8格式中文字 * @return string 结果 */ function pregChinese($chinese) { $rule = '/([\x{4e00}-\x{9fa5}]){1}/u'; if (preg_match($rule, $chinese, $result)) { return $result; } else { return "不匹配!"; } }
Articles connexes :
Le plus couramment utilisé en PHP Explication détaillée des expressions régulières
Code d'expression régulière php pour filtrer les balises HTML, les espaces et les nouvelles lignes
Méthode de spécification des caractères dans les variables de remplacement régulières 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!