10个实用的PHP正则表达式汇总

原文 10个实用的PHP正则表达式汇总

正则表达式是程序开发中一个重要的元素,它提供用来描述或匹配文本的字符串,如特定的字符、词或算式等。但在某些情况下,用正则表达式去验证一个字符串比较复杂和费时。本文为你介绍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://www.jakehu.me/";
    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中提取域名

    $url ="http://www.jakehu.me/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
    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;
时间: 2024-10-11 17:25:33

10个实用的PHP正则表达式汇总的相关文章

[转]验证E-mail、用户名、社保号、IP地址等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.";

10个实用的PHP正则表达式

正则表达式是程序开发中一个重要的元素,它提供用来描述或匹配文本的字符串,如特定的字符.词或算式等.但在某些情况下,用正则表达式去验证一个字符串比较复杂和费时.本文为你介绍10种常见的实用PHP正则表达式的写法,希望对你的工作有所帮助. 1. 验证E-mail地址 这是一个用于验证电子邮件的正则表达式.但它并不是高效.完美的解决方案.在此不推荐使用. 1 $email = "[email protected]"; 2 if (preg_match('/^[^0-9][a-zA-Z0-9_

常用正则表达式汇总

1.    平时做网站经常要用正则表达式,虽说可以百度,但每次都去搜搜实在是太麻烦,这里给大家汇总了常用的较完整的正则表达式, 希望能给大家带去方便和帮助:2.    "^\d+$" //非负整数(正整数 + 0)3.    "^[0-9]*[1-9][0-9]*$" //正整数4.    "^((-\d+)|(0+))$" //非正整数(负整数 + 0)5.    "^-[0-9]*[1-9][0-9]*$" //负整数6.

PHP常用正则表达式汇总 [复制链接]

PHP常用正则表达式汇总 [复制链接] 上一主题下一主题   离线我是小猪头 法师 发帖 539 加关注 发消息 只看楼主 倒序阅读 使用道具楼主  发表于: 2011-06-22 更多 — 本帖被 jkr7 执行置顶操作(2012-08-21) — 1.    平时做网站经常要用正则表达式,下面是一些讲解和例子,仅供大家参考和修改使用: 2.    "^\d+$" //非负整数(正整数 + 0) 3.    "^[0-9]*[1-9][0-9]*$" //正整数 

10段实用的HTML5代码

1.HTML5编写的CSS ResetCSS Reset也可以写成Reset CSS,即重设浏览器样式. /*   html5doctor.com Reset Stylesheet (Eric Meyer's Reset Reloaded + HTML5 baseline)  v1.4 2009-07-27 | Authors: Eric Meyer & Richard Clark  html5doctor.com/html-5-reset-stylesheet/*/ html, body, d

程序员在编程开发中的10个实用技巧

程序员在编程开发中的10个实用技巧,下面是我自己在工作中学到的一些简单的技巧和策略,希望能对各位有用.1.     橡皮鸭调试法不知道各位有没有这样的经历,当你正在给别人描述问题的时候,突然灵机一动想到了解决方案?这种情况的产生是有科学依据的.高谈阔论能让我们的大脑重新有条理地组织问题.在这种情况下,你的聊天对象就是“橡皮鸭”.团队中的每个人都应该积极主动乐意地成为彼此的“橡皮鸭”.有时候,如果你幸运的话,你的“橡皮鸭”搞不好还能给出有效的建议呢.2.     快速信息反馈一旦写好代码就要尽快得

.NET开发中常用的10条实用代码

1.读取操作系统和CLR的版本 OperatingSystem os = System.Environment.OSVersion; Console.WriteLine(“Platform: {0}”, os.Platform); Console.WriteLine(“Service Pack: {0}”, os.ServicePack); Console.WriteLine(“Version: {0}”, os.Version); Console.WriteLine(“VersionStrin

10个实用Eclipse调试技巧

Eclipse是众多Java程序员实用的开发工具,其中开发技巧也是繁多,但作为优秀的Java程序员,需要掌握最起码的调试技巧. 小编从前辈程序员和网络中,整理了10个Eclipse调试技巧,希望对Java程序员有用. 1 条件断点 如果你不知道如何添加断点,只需点击左边面板(行号前面)断点即被创建.在调试界面中,"断点"视图会把所有被创建的断点列出来.我们可以给它加一个布尔条件,也就是说,该断点会被激活并且如果布尔条件为真,就会执行该断点,否则将会跳过往下执行. 2 异常断点 在断点视

js常用正则表达式汇总

常用的前台正则表达式汇总. 1.手机号验证 手机格式以1开头,现有的手机格式一般为13.14.15.17.18等 var regMobile = /^1[34578]\d{9}$/; //或者为/^1[3|4|5|7|8][0-9]\d{8}$/; if(!regMobile.test('手机号')){ alert('手机号格式不正确!'); } 2.邮箱验证 var regEmail = /^(\w-*\.*)[email protected](\w-?)+(\.\w{2,})+$/ 3.固话