PHP字符串正则替换函数preg_replace

语法: mixed preg_replace(mixed pattern, mixed replacement, mixed subject);

返回值: 混合类型资料

函数种类: 资料处理

内容说明: 本函数以 pattern 的规则来解析比对字符串 subject,欲取而代之的字符串为参数 replacement。返回值为混合类型资料,为取代后的字符串结果。

1. preg_replace()

$msg = preg_replace("/<style>.+</style>/is", "", $msg); -----删除<style></style>和中间的部分
$msg = preg_replace("/<[^>]+>/", "", $msg); -----是删除<>和中间的内容

i (PCRE_CASELESS)
如果设定此修正符,模式中的字符将同时匹配大小写字母。
s (PCRE_DOTALL)
如果设定了此修正符,模式中的圆点元字符(.)匹配所有的字符,包括换行符。没有此设定的话,则不包括换行符。这和 Perl 的 /s 修正符是等效的。排除字符类例如 [^a] 总是匹配换行符的,无论是否设定了此修正符。

2. ereg()与eregi()

注: preg_match() 函数通常是比 ereg() 更快的替代方案

eregi("<body([^>]+)>(.+)</body>",$data,$b)----察看$data中是否有body标签。如果有,把参数赋值$b[0],中间部分赋值$b[1]。

bool ereg ( string pattern, string string [, array regs] )

int eregi ( string pattern, string string, array [regs] )

eregi()和 ereg() 类似,用法也相同。不同之处在于ereg()有区分大小写,eregi()与大小写无关

 

<?php教程
//preg_replace()和ereg_replace()函数的使用的比较
// -------preg_replace()--------------------------
//1.进行字符串的查找的替换
         $str         = "daoyu shi ge hao hai zi 5555";
         $pattern     = "/s/";           //如果将变量定义为$pattern_1会出错
         $str               = preg_replace($pattern,'-',$str);
         echo $str."<br>";

//2.对字符串的逆向引用
//方法一
         $pat         = "/(w+)-(w+)-(w+)-(w+)-(w+)-(w+)-(d+)/i";
         $str         =preg_replace($pat,"$1",$str);
         echo $str."<br>";

//注意:如果是下面这种形式你会发现匹配的是:zi- 所以可以这样认为在有次数的{6}的情况下,他($1)匹配的是最后一次
         $pat         = "/((w+)-){6}(d+)/i";
         $str         =preg_replace($pat,"$1",$str);
         echo $str."<br>";

//方法二
         $str         = "daoyu-shi-ge-hao-hai-zi-5555";
         $pat         = "/(w+)-(w+)-(w+)-(w+)-(w+)-(w+)-(d+)/i";       
         $str         =preg_replace($pat,"1",$str);
         echo $str."<br>";

//注意:当正则写成$pat= "/((w+)-){6}(d+)/i";时和上面的情况一样

时间: 2024-11-08 18:19:52

PHP字符串正则替换函数preg_replace的相关文章

PHP正则替换函数preg_replace和preg_replace_callback使用总结_php技巧

在编写PHP模板引擎工具类时,以前常用的一个正则替换函数为 preg_replace(),加上正则修饰符 /e,就能够执行强大的回调函数,实现模板引擎编译(其实就是字符串替换). 详情介绍参考博文:PHP函数preg_replace() 正则替换所有符合条件的字符串 应用举例如下: 复制代码 代码如下: <?php /**  * 模板解析类  */ class Template {  public function compile($template) {   // if逻辑   $templa

php 正则表达式替换与正则替换函数

php教程 正则表达式替换与正则替换函数 /* 下面我们是要把指定正则出来的内空替换成别一种内容,这样做我们就会要用到正则替换函数preg_replace了,下面的实例是 文本有下面标签 <img style src="<?=$url?>/images/styleno.jpg" width="30" height="30" /> <img style src="<?=$url?>/images/

php中正则替换函数ereg

 下面的实例是利用php 正则替换函数 ereg_replace来把指定的字符替换成我想需要的字符实例,代码如下: 代码如下: $num = 'www.jb51.net'; $string = "this string has four words. <br>"; $string = ereg_replace ('four', $num, $string); echo $string;   $num = '49'; $string = "this string h

php中正则替换函数ereg_replace用法实例

本文实例讲述了php中正则替换函数ereg_replace用法.分享给大家供大家参考.具体如下: 下面的实例是利用php 正则替换函数 ereg_replace来把指定的字符替换成我想需要的字符实例,代码如下: 复制代码 代码如下:$num = 'www.jb51.net'; $string = "this string has four words. <br>"; $string = ereg_replace ('four', $num, $string); echo $

php中正则替换函数ereg_replace用法实例_正则表达式

本文实例讲述了php中正则替换函数ereg_replace用法.分享给大家供大家参考.具体如下: 下面的实例是利用php 正则替换函数 ereg_replace来把指定的字符替换成我想需要的字符实例,代码如下: 复制代码 代码如下: $num = 'www.jb51.net'; $string = "this string has four words. <br>"; $string = ereg_replace ('four', $num, $string); echo

ASP自定义函数:对字符串正则替换

函数|正则|字符串 RegReplace(str,regexStr,RepalceStr)对str进行正则替换 如: htmlstr="123<imgsrc=http://itdowns.com/edu/asp/20070123/""asdf.gif""border=""0"">45<b>6</b>"htmlstr2=RegReplace(htmlstr,"&l

js字符串完全替换函数分享_javascript技巧

这几天用到了js字符串完全替换的功能,啥都不说,直接上代码,需要拷走即可: 复制代码 代码如下: <!DOCTYPE html> <html>     <head>         <meta charset="utf-8" />         <title></title>         <script type="application/javascript">       

php正则之函数 preg_replace()参数说明_正则表达式

preg_replace 字符串比对解析并取代.  语法: mixed preg_replace(mixed pattern, mixed replacement, mixed subject);  返回值: 混合类型资料  函数种类: 资料处理  内容说明  本函数以 pattern 的规则来解析比对字符串 subject,欲取而代之的字符串为参数 replacement.返回值为混合类型资料,为取代后的字符串结果.  使用范例  下例返回值为 $startDate = 6/19/1969 复

php正则之函数 preg_replace()参数说明

preg_replace 字符串比对解析并取代.  语法: mixed preg_replace(mixed pattern, mixed replacement, mixed subject);  返回值: 混合类型资料  函数种类: 资料处理  内容说明  本函数以 pattern 的规则来解析比对字符串 subject,欲取而代之的字符串为参数 replacement.返回值为混合类型资料,为取代后的字符串结果.  使用范例  下例返回值为 $startDate = 6/19/1969 复