• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

网站开发常用的10个PHP正则表达式(推荐)

php 搞代码 3年前 (2022-01-22) 37次浏览 已收录 0个评论

http://www.gaodaima.com/wiki/588.html” target=”_blank” rel=”nofollow” style=”line-height: 1.76em;”>正则表达式是程序开发中一个重要的元素,它提供用来描述或匹配文本的字符串,如特定的字符、词或算式等。但在某些情况下,用正则表达式去验证一个字符串比较复杂和费时。本文为你介绍10种常见的实用PHP正则表达式的写法,希望对你的工作有所帮助。

1. 验证E-mail地址

这是一个用于验证电子邮件的正则表达式。但它并不是高效、完美的解决方案。在此不推荐使用。

$email = "[email protected]";if (preg_match('/^[^0-9][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[@][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[.][a-zA-Z]{2,4}$/',$email)) {echo "Your email is ok.";} else {echo "Wrong email address format";}

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

if (filter_var([email protected]', FILTER_VALIDATE_EMAIL)) {echo "Your email is ok.";} else {echo "Wrong email address format.";}

2. 验证用户名

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

$username = "user_name12";if (preg_match('/^[a-z\d_]{5,20}$/i', $username)) {echo "Your username is ok.";} else {echo "Wrong username format.";}

3. 验证电话号码

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

$phone = "(021)423-2323";if (preg_match('/\(?\d{3}\)?[-\s.]?\d{3}[-\s.]\d{4}/x', $phone)) {echo "Your phone number is ok.";} else {echo "Wrong phone number.";}

4. 验证IP地址

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

$IP = "198.168.1.78";if (preg_match('/^(([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]).){3}([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/',$IP)) {echo "Your IP address is ok.";} else {echo "Wrong IP address.";}

5. 验证邮政编码

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

$zipcode = "12345-5434";if (preg_match("/^([0-9]{5})(-[0-9]{4})?$/i",$zipcode)) {echo "Your Zip code is ok.";} else {echo "Wrong Zip code.";}

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

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

$ssn = "333-23-2329";if (preg_match('/^[\d]{3}-[\d]{2}-[\d]{4}$/',$ssn)) {echo "Your SSN is ok.";} else {echo "Wrong SSN.";}

7. 验证信用卡号

$cc = "378282246310005";if (preg_match('/^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|6011[0-9]{12}|3(?:0[0-5]|[68][0-9])[0-9]{11}|3[47][0-9]{13})$/', $cc)) {echo "Your credit card number is ok.";} else {echo "Wrong credit card number.";}

8. 验证域名

$url = "http://ansoncheung.tk/";if (preg_match('/^(http|https|ftp):\/\/([A-Z0-9][A-Z0-9_-]*(?:\.[A-Z0-9][A-Z0-9_-]*)+):?(\d+)?\/?/i', $url)) {echo "Your url is ok.";} else {echo "Wrong url.";}

9. 从特定URL中提取域名

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

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

$text = "Sample sentence from AnsonCheung.tk, regular expression has become popular in web programming. Now we learn regex. According to wikipedia, Regular e<b>%本文@来源gao@!dai!ma.com搞$$代^@码!网</b><strong>搞代gaodaima码</strong>xpressions (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;

以上就是网站开发常用的10个PHP正则表达式(推荐)的详细内容,更多请关注搞代码gaodaima其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:网站开发常用的10个PHP正则表达式(推荐)

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址