当前位置:  编程技术>php

PHP 正则表达式常用函数

    来源: 互联网  发布时间:2014-08-26

    本文导语:  1.preg_match() 函数原型:int preg_match (string $pattern, string $content [, array $matches]) preg_match ()函数在$content字符串中搜索与$pattern给出的正则表达式相匹配的内容。如果提供了$matches,则将匹配结果放入其 中。$matches[0]将包含与整个...

1.preg_match()

函数原型:int preg_match (string $pattern, string $content [, array $matches])
preg_match ()函数在$content字符串中搜索与$pattern给出的正则表达式相匹配的内容。如果提供了$matches,则将匹配结果放入其 中。$matches[0]将包含与整个模式匹配的文本,$matches[1]将包含第一个捕获的与括号中的模式单元所匹配的内容,以此类推。该函数只 作一次匹配,最终返回0或1的匹配结果数。代码6.1给出preg_match()函数的一段代码示例。
代码6.1 日期时间的匹配
代码如下:


这是一个简单动态文本串匹配实例。假设当前系统时间是“2006年8月17日13点25分”,将输出如下的内容。
匹配的时间是:2006-08-17 01:25 pm
当前日期是:2006-08-17
当前时间是:01:25 pm

2.ereg()和eregi()

ereg()是POSIX扩展库中正则表达式的匹配函数。eregi()是ereg()函数的忽略大小写的版 本。二者与preg_match的功能类似,但函数返回的是一个布尔值,表明匹配成功与否。需要说明的是,POSIX扩展库函数的第一个参数接受的是正则 表达式字符串,即不需要使用分界符。例如,代码6.2是一个关于文件名安全检验的方法。
代码6.2 文件名的安全检验
代码如下:


通常情况下,使用与Perl兼容的正则表达式匹配函数perg_match(),将比使用ereg()或eregi()的速度更快。如果只是查找一个字符串中是否包含某个子字符串,建议使用strstr()或strpos()函数。

正则表达式的替换

1.ereg_replace()和eregi_replace()

函数原型:string ereg_replace (string $pattern, string $replacement, string $string)
string eregi_replace (string $pattern, string $replacement, string $string)
ereg_replace()在$string中搜索模式字符串$pattern,并将所匹配结果替换 为$replacement。当$pattern中包含模式单元(或子模式)时,$replacement中形如“/1”或“$1”的位置将依次被这些子 模式所匹配的内容替换。而“/0”或“$0”是指整个的匹配字符串的内容。需要注意的是,在双引号中反斜线作为转义符使用,所以必须使用“//0”,“ //1”的形式。
eregi_replace()和ereg_replace()的功能一致,只是前者忽略大小写。代码6.6是本函数的应用实例,这段代码演示了如何对程序源代码做简单的清理工作。
代码6.6 源代码的清理
代码如下:


2.preg_replace()

函数原型:mixed preg_replace (mixed $pattern, mixed $replacement, mixed $subject [, int $limit])
preg_replace较ereg_replace的功能更加强大。其前三个参数均可以使用数组;第四个参数$limit可以设置替换的次数,默认为全部替换。代码6.7是一个数组替换的应用实例。
代码6.7 数组替换
代码如下:


输出结果如下。

Name: Thomas Ching", 
Email: tom@emailaddress.com 
Address: No.5, Wilson St., New York, U.S.A 

在preg_replace的正则表达式中可以使用模式修正符“e”。其作用是将匹配结果用作表达式,并且可以进行重新运算。例如:
代码如下:


    
 
 

您可能感兴趣的文章:

  • PHP html标签正则替换并可自定义正则规则
  • php使用正则过滤js脚本代码实例
  • 正则表达式php函数库 ABNF to REGEX
  • php正则验证邮箱的函数
  • php利用正则表达式取出图片的URL
  • 一个正则的写法 php
  • php正则表达式转义字符的例子
  • PHP正则匹配图片并给图片加链接详解
  • php 正则 不包含某字符串的正则表达式
  • php password密码验证正则表达式(8位长度限制)
  • php正则表达式中的非贪婪模式匹配
  • PHP下ereg实现匹配ip的正则
  • php 手机号码验证正则表达式
  • PHP过滤★等特殊符号的正则
  • php正则表达式验证手机电话
  • PHP 正则表达式验证中文的问题
  • php正则过滤特殊字符的方法
  • php正则之函数 preg_replace()参数说明
  • php+正则将字符串中的字母数字和中文分割
  • php正则表达式匹配img中任意属性的方法
  • PHP把空格、换行符、中文逗号等替换成英文逗号的正则表达式
  • PHP匹配多行的正则表达式分析
  • 学习php中的正则表达式
  • PHP 正则表达式后面接的/isU, /is, /s含义
  • php下常用表单验证的正则表达式
  • php使用正则表达式提取字符串中尖括号、小括号、中括号、大括号中的字符串
  • PHP中的递归正则表达式用法分享
  • PHP 正则表达式分析RSS
  • PHP和javascript常用正则表达式及用法实例
  • 修改月光博客网站中PHP常用正则表达式中出现的错误
  • PHP 正则表达式特殊字符 [:alnum:] [:alpha:] 等
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • PHP的substr() 函数用法
  • php构造函数与析构函数
  • php中检测变量是否是一个对象的is_object函数介绍及用法举例
  • php构造函数与析构函数初探
  • php session_id()函数介绍及代码实例
  • PHP中的Pack()函数,Java有哪个函数与之对应???
  • php中session_id()函数详细介绍,会话id生成过程及session id长度
  • php构造函数与析构函数 php内存管理函数
  • php将html特殊字符转换成html字符串的函数:htmlspecialchars()介绍及代码举例
  • php数组函数之array_combine() 数组合并函数
  • php使用socket_bind()函数绑定IP地址
  • php构造函数和析构函数学习
  • php将unix时间戳转换成字符串时间函数(date)
  • php trim函数执行过程解析
  • php通过pack和unpack函数实现对二进制数据封装及解析
  • php递归函数小例子
  • php时间格式化函数date介绍及用法参考
  • php sprintf函数用法 php浮点数格式
  • php递归示例 php递归函数代码
  • php构造函数与析构函数实例分析
  • 在php中如何用exec()函数运行mv命令
  • 修改配置真正解决php文件上传大小限制问题(nginx+php)
  • IIS7配置PHP图解(IIS7+PHP_5.2.17/PHP_5.3.5)
  • PHP 5.4.19 和 PHP 5.5.3 发布及下载地址
  • php输入流php://input使用示例(php发送图片流到服务器)
  • 修改配置真正解决php文件上传大小限制问题(apache+php)
  • PHP转换器 HipHop for PHP
  • PHP去除html标签,php标记及css样式代码参考
  • PHP 框架 Pop php
  • PHP 'ext/soap/php_xml.c'不完整修复存在多个任意文件泄露漏洞
  • PHP的JavaScript框架 PHP.JS




  • 特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3