ThinkPHP常用正则表达式

匹配str中的电话

    <?php
    $p = '/\d+\-\d+/';
    $str = "我的电话是010-12345678";
    preg_match($p, $str, $match);
    echo $match[0];

匹配str中的姓名

    <?php
    $p = '/name:([\w\s]+)/';
    $str = "name:steven jobs";
    preg_match($p, $str, $match);
    echo $match[1]; //结果为:steven jobs

实现正则匹配,并输出邮箱地址

    <?php
    $subject = "my email is spark@imooc.com";
    $pattern = '/[\w\-]+@\w+\.\w+/';
    preg_match($pattern, $subject, $matches);
    echo $matches[0];

正则匹配所有li中的数据

    <?php
    $str = "<ul>
            <li>item 1</li>
            <li>item 2</li>
        </ul>";
        $p = "/<li>(.*)<\/li>/i";
        //解释下这个正则://后面的i表示不区分大小写,<li>(.*?)<\/li>表示li标签内的匹配的()内的值有多少,括号内的.表示所有单字符,*表示数量为0个或者多个。也就是li标签内有字符就显示出来
        preg_match_all($p, $str, $matches);
        print_r($matches[1]);

正则表达式的搜索和替换

    <?php
    $str = '主要有以下几个文件:index.php, style.css, common.js';
        //将目标字符串$str中的文件名替换后增加em标签
        $p = '/\w+\.\w+/i';
        $str = preg_replace($p, '<em>$0</em>', $str);
        echo $str;

正则匹配常用案例 注册

   <?php
    $user = array(
        'name' => 'spark1985',
        'email' => 'spark@imooc.com',
        'mobile' => '13312345678'
    );
    //进行一般性验证
    if (empty($user)) {
        die('用户信息不能为空');
    }
    if (strlen($user['name']) < 6) {
        die('用户名长度最少为6位');
    }
    //用户名必须为字母、数字与下划线
    if (!preg_match('/^\w+$/i', $user['name'])) {
        die('用户名不合法');
    }
    //验证邮箱格式是否正确
    if (!preg_match('/^[\w\.]+@\w+\.\w+$/i', $user['email'])) {
        die('邮箱不合法');
    }
    //手机号必须为11位数字,且为1开头
    if (!preg_match('/^1\d{10}$/i', $user['mobile'])) {
        die('手机号不合法');
    }
    echo '用户信息验证成功';
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值