<?php

    //1.搜索数组中的相匹配的字符串
    //preg_grep() 返回一个数组
    $language = array("php","asp","jsp","python","ruby");

    //找出jsp,asp,php => 结尾匹配P
    $model = "/p$/";
    print_r(preg_grep($model, $language));
    echo "<hr>";

    //打印出开头为P
    $model = "/^p/";
    print_r(preg_grep($model, $language));
    echo "<hr>";

    //2.搜索模式,返回真或假。1,0;
    //preg_match();
    echo(preg_match("/php[1-6]/", "php7"));
    echo(preg_match("/php[1-6]/", "php2"));
    echo "<hr>";

    //电子邮件的小案例

    $model = "/([\w]{2,255})@([\w]{1,255})\.([a-z]{2,4})/";
    $email = "1056834607@qq.com";
    echo (preg_match($model, $email));

    $model = "/([\w]{2,255})@([\w]{1,255})\.([a-z]{2,4})/";
    $email = "gaoxiong@qqvvvvvvvvvvvvvv.xin";

    $model = "/([\w]{2,255})@([\w]{1,255})\.([a-z]{3,4})/";
    $email = "arraybuffer@foxmail.com";
    echo (preg_match($model, $email))."<hr>";//1

    //3.全局正则表达式匹配
    //preg_match_all()将字符串的所有匹配得到的结果放到一个数组
    preg_match_all("/php[1-6]/", "php5fffffphp6cccccphp3", $out);
    print_r($out);//$out是一个二位数组
    echo "<hr>";

    //4.定界正则
    // preg_quote()在内阁对于正则表达式语法而言有特俗含义的字符前插入一个反斜线,这些特俗字符包含:$ ^ * () [] {} | \\:<>
    echo(preg_quote("this is $50"))."<hr>";

    //5.替换模式
    //preg_replace()搜索到所有匹配,然后替换成想要的字符串返回出来
    echo preg_replace("/php[1-6]/", "python", "this is php5, this is php4")."\n<hr>";

    //6.贪婪和分组获取案例
    $model = '/\[b\](.*)\[\/b\]/U';
    $replace = '<strong>\1</strong>';//必须使用单引号
    $string = "this is [b]xiong[/b], this is [b]xiong[/b] ";
    echo preg_replace($model, $replace, $string)."\n<hr>";

    $model = '/<span>(.*)<\/span>/U';
    $replace = '<strong>\1</strong>';//必须使用单引号
    $string = 'this is <span>xiong</span>, this is <span>xiong</span>';
    echo preg_replace($model, $replace, $string)."<hr>";

    //6.以不区分大小写的方式来划分不同的元素
    //preg_split() 返回一个数组
    print_r(preg_split("/[\.@]/", "arraybuffer@qq.com"))

?>

php基础33:正则匹配-perl的更多相关文章

  1. Java基础--常用正则匹配符号(必背,必须背,死都要背)

    1.字母:匹配单个字母 (1)A:表示匹配字母A: (2)\\:匹配转义字符“\”: (3)\t:匹配转义字符“\t”: (4)\n:匹配转义字符“\n”: 2.一组字符:任意匹配里面的一个单个字符: ...

  2. Perl 正则匹配经验记录

    0.正则匹配字典:http://www.cnblogs.com/itech/archive/2010/03/19/1689793.html 1.$/=">";重新定义字符串分 ...

  3. Flask基础(3):session、flash、特殊装饰器、蓝图、路由正则匹配、上下文管理 & flask-session

    Session: Flask 默认将 session 以加密的形式放到了浏览器的 cookie 中 Flask 的 session 就是一个字典,字典有什么方法 session 就有什么方法 flas ...

  4. Python 基础之正则之二 匹配分组,正则相关函数及表达式修饰符

    四.匹配分组   [元字符] 分组符号 a|b   匹配字符a 或 字符b  (如果两个当中有重合部分,把更长的那个放前面) (ab)   匹配括号内的表达式 ,将()作为一个分组 num  引用分组 ...

  5. python_way day18 html-day4, Django路由,(正则匹配页码,包含自开发分页功能), 模板, Model(jDango-ORM) : SQLite,数据库时间字段插入的方法

    python_way day18 html-day4 1.Django-路由系统   - 自开发分页功能 2.模板语言:之母板的使用 3.SQLite:model(jDango-ORM) 数据库时间字 ...

  6. FPGA做正则匹配和网络安全,究竟有多大的优势?

    FPGA做正则匹配和网络安全,究竟有多大的优势? 西电通院专用集成电路课程学习 云导播 网络安全已经被提升为国家战略的高度,高校里面的新增的一级学科,去年9月份,中央网信办.教育部公布了“一流网络安全 ...

  7. python中正则匹配之re模块

    Python中正则表达式 re:re是提供正则表达式匹配操作的模块 一.什么是正则表达式 正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某个模式匹配,Python 自1.5版本起 ...

  8. MySQL全面瓦解8:查询的正则匹配

    概述 上一章 查询的过滤条件,我们了解了MySQL可以通过 like % 通配符来进行模糊匹配.同样的,它也支持其他正则表达式的匹配,我们在MySQL中使用 REGEXP 操作符来进行正则表达式匹配. ...

  9. php 正则匹配中文(转)

    我使用正则表达式来匹配中问的时候,出现了无法匹配的问题,问题如下 PCRE does not support \L, \l, \N{name}, \U, or \u at offset 2 我原来的匹 ...

随机推荐

  1. iOS开发笔记1:ToDoList、相册、地图应用及新浪微博

    前段时间做了一些小东西,一些关键点记录总结如下 1.ToDoList 主要是使用UITableView以及NSUserDefaults完成任务管理,可新建.编辑及删除任务. 因为是Demo性质,所以利 ...

  2. 实验:传输层:UDP协议 学习笔记

    一.传输层协议 从之前介绍的网络层协议来看,通信的两端是两台主机,IP数据报首部就标明了这两台主机的IP地址.但是从传输层来看,是发送方主机中的一个进程与接收方主机中的一个进程在交换数据,因此,严格地 ...

  3. IOS之--UI进阶--多控制器管理第一天

    01-项目中常见的文件(LaunchScreen) Xcode5 框架是苹果事先已经导入进去的.在项目的结构当中就能够看到导入的框架. Xcode6 会自动导入一些觉见的框架.在项目结构当中,看不到已 ...

  4. Windows平台的Eclipse-javaEE-mars相关配置

    平台:winddow10 前提: 1>  搭建好了jdk1.8.0_60环境 2>  下载放置好了apache-tomcat-8.0.24 3>  下载好了eclipse-jee-m ...

  5. LeetCode 2 Add Two Numbers(链表操作)

    题目来源:https://leetcode.com/problems/add-two-numbers/ You are given two linked lists representing two ...

  6. spring aop 拦截业务方法,实现权限控制

    难点:aop类是普通的java类,session是无法注入的,那么在有状态的系统中如何获取用户相关信息呢,session是必经之路啊,获取session就变的很重要.思索很久没有办法,后来在网上看到了 ...

  7. 常用的JSTL函数

    下面是JSTL中自带的方法列表以及其描述 函数名 函数说明 使用举例 fn:contains 判断字符串是否包含另外一个字符串 <c:if test="${fn:contains(na ...

  8. JS生成UUID的方法实例

    <!DOCTYPE html> <html> <head> <script src="http://libs.baidu.com/jquery/1. ...

  9. Linux系统升级更新openssh 7.3p1

    放在最前面:鉴于网上爬虫猖獗,博客被盗时有发生,这里需要来个链接,大家请认准来自博客园的Scoter:http://www.cnblogs.com/scoter2008,本文将持续更新 最近绿盟给扫描 ...

  10. JavaScript的函数重载

    java语言中函数的重载和重写可谓是很重要的概念,所以在写js的时候时不时的会想到这种用法,重写先不说,这里只说重载.. <script language="JavaScript&qu ...