Les dix expressions régulières PHP les plus pratiques

小云云
Libérer: 2023-03-17 10:20:02
original
1759 Les gens l'ont consulté

什么是PHP正则表达式?它是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。那么常见的PHP正则表达式有哪些呢?下面就是为大家总结的十条最实用的PHP正则表达式。

1、为了更加有效验证电子邮件地址,推荐使用filer_var。

if (filter_var('test+email@ansoncheung', FILTER_VALIDATE_EMAIL)) {  
echo "Your email is ok.";  
} else {  
echo "Wrong email address format.";  
}
Copier après la connexion

2. 验证用户名

这是一个用于验证用户名的实例,其中包括字母、数字(AZ,az,09)、下划线以及最低5个字符,最大20个字符。同时,也可以根据需要,对最小值和最大值做合理的修改。

$username = "user_name12";  
if (preg_match('/^[az\d_]{5,20}$/i', $username)) {  
echo "Your username is ok.";  
} else {  
echo "Wrong username format.";  
}
Copier après la connexion

3. 验证电话号码

这是一个验证美国电话号码的实例。

$phone = "(021)4232323";  
if (preg_match('/?\d3?[\s.]?\d{3}[\s.]\d{4}/x', $phone)) {  
echo "Your phone number is ok.";  
} else {  
echo "Wrong phone number.";  
}
Copier après la connexion

4. 验证IP地址

这是一个用来验证IPv4地址的实例。

$IP = "198.168.1.78";  
if   
(preg_match('/^(([19]?[09]|1[09]{2}|2[04][09]|25[05]).){3}([19]?[09]|1[09]{2}|2[04][09]|25[05])$/',$IP))   
{  
echo "Your IP address is ok.";  
} else {  
echo "Wrong IP address.";  
}
Copier après la connexion

5. 验证邮政编码

这是一个用来验证邮政编码的实例。

$zipcode = "123455434";  
if (preg_match("/^([09]{5})([09]{4})?$/i",$zipcode)) {  
echo "Your Zip code is ok.";  
} else {  
echo "Wrong Zip code.";  
}
Copier après la connexion

6. 验证SSN(社会保险号)

这是一个验证美国SSN的实例。

$ssn = "333232329";  
if (preg_match('/^[\d]{3}[\d]{2}[\d]{4}$/',$ssn)) {  
echo "Your SSN is ok.";  
} else {  
echo "Wrong SSN.";  
}
Copier après la connexion

7. 验证信用卡号

$cc = "378282246310005";  
if   
(preg_match('/^(?:4[09]{12}(?:[09]{3})?|5[15][09]{14}|6011[09]{12}|3(?:0[05]|[68][09])[09]{11}|3[47][09]{13})$/',   
$cc)) {  
echo "Your credit card number is ok.";  
} else {  
echo "Wrong credit card number.";  
}
Copier après la connexion

8. 验证域名

$url = "http://ansoncheung.tk/";  
if   
(preg_match('/^(http|https|ftp):\/\/([AZ09][AZ09_](?:\.[AZ09][AZ09_])+):?(\d+)?\/?/i',   
$url)) {  
echo "Your url is ok.";  
} else {  
echo "Wrong url.";  
}
Copier après la connexion

9. 从特定URL中提取域名

4$url = "http://ansoncheung.tk/articles";  
preg_match('@^(?:http://)?([^/]+)@i', $url, $matches);  
$host = $matches[1];  
echo $host;
Copier après la connexion

10. 将文中关键词高亮显示

$text = "Sample sentence from AnsonCheung.tk, regular expression has become   
popular in web programming. Now we learn regex. According to wikipedia, Regular   
expressions (abbreviated as regex or regexp, with plural forms regexes, regexps,   
or regexen) are written in a formal language that can be interpreted by a   
regular expression processor";  
$text = preg_replace("/\b(regex)\b/i", '\1', $text);  
echo $text;
Copier après la connexion

由于正则表达式主要应用对象是文本,因此它在各种文本编辑器场合都有应用,小到著名编辑器EditPlus,大到Microsoft Word、Visual Studio等大型编辑器,都可以使用正则表达式来处理文本内容。

相关推荐:

正则表达式的应用

利用PHP正则删除HTML代码中宽高样式

PHP正则表达式中修饰符有哪些?

php正则删除img标签的方法

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal