eregi_replace()中特殊字符的处理方法

我对PHP的正则表达式不太熟悉   
  在使用eregi_replace()函数时发现带有()的字符串不能进行替换,看了手册还是糊里糊涂   
  比如   
  将   DIN   1693(Pt.2)-1997   加粗   
  使用     
  $str='din   1693(Pt.2)-1997'   
  eregi_replace($str,"<strong>".$str."</strong>",$str);   
  最后因为字符串中含有括号而无法处理   
  现在我知道这样写不对了,但不知道正确的写法是什么   
  那位大侠可以教教我这种问题的处理方法? 还有,   
  如果使用小写字母查询   
  用这个函数会把原本的大写字母替换成小写,不知道如何保持原来的写法(大写或小写)   
  我看到GOOGLE是这样的

<?   
  $str='din   1693(Pt.2)-1997';   
  echo   preg_replace("/(".preg_quote($str).")/","<strong>\\1</strong>",$str);   
  ?>
  转义   
  quotemeta   
  preg_quote

如果是ereg函数组用quotemeta   
  如果是preg函数组用preg_quote   
  echo   preg_replace("/(".preg_quote($str).")/","<strong>\\1</strong>",$str);   
  \\1就是引用找到的部份,这样可保留原来大小写.

(0)

相关推荐

  • POSIX 风格和兼容 Perl 风格两种正则表达式主要函数的类比(preg_match, preg_replace, ereg, ereg_replace)

    首先来看看 POSIX 风格正则表达式的两个主要函数: ereg 函数:(正则表达式匹配) 格式:int ereg ( string pattern, string string [, array &regs] ) 注意:使用 Perl 兼容正则表达式语法的 preg_match() 函数通常是比 ereg() 更快的替代方案.(一般的话还是使用 preg_match() ,比较好勒~~) 以区分大小写的方式在 string 中寻找与给定的正则表达式 pattern 所匹配的子串.如果找到与 p

  • eregi_replace与preg_replace 函数代码的用法比较

    eregi_replace ( string pattern, string replacement, string string ) preg_replace ( mixed pattern, mixed replacement, mixed subject [, int limit [, int &count]] ) 以上两个函数基本义定义我知道 但是里面样式或参数的定义我搞不懂 例如以下是UBB与YBB Code的用法 $str = eregi_replace("\\[url]ht

  • php 升级到 5.3+ 后出现的一些错误,如 ereg(); ereg_replace(); 函数报错

    在php5.3环境下运行,常常会出现 Deprecated: Function ereg() is deprecated in...和Deprecated: Function ereg_replace() is deprecated in...这些类型的报错提示. 其原因在于:php5.3以上的版本不支持ereg()函数,而是使用preg_match()函数:不支持ereg_replace()函数,而使用preg_replace()函数. 解决方法:将不支持的函数修改为支持的函数即可.   例如

  • 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

  • eregi_replace()中特殊字符的处理方法

    我对PHP的正则表达式不太熟悉      在使用eregi_replace()函数时发现带有()的字符串不能进行替换,看了手册还是糊里糊涂      比如      将   DIN   1693(Pt.2)-1997   加粗      使用        $str='din   1693(Pt.2)-1997'      eregi_replace($str,"<strong>".$str."</strong>",$str);      最

  • Shell命令行中特殊字符与其转义详解(去除特殊含义)

    特殊符号及其转义 大家都知道在一个shell命令是由命令名和它的参数组成的, 比如 cat testfile, 其中cat是命令名, testfile是参数. shell将参数testfile传递给cat命令. 但是, 如果参数中含有特殊字符, 比如说*, *我们知道,是表示任意多个(包括0个)任意字符. 那么shell的工作方式是,它会对这些特殊字符进行预先处理, 然后再将处理的结果传给那个命令. 比如说,如果你的当前目录有file, file1, file2 三个文件, 那么当你执行cat

  • Node.js Mongodb 密码特殊字符 @的解决方法

    在去年的 DB 勒索事件之后, 不少的同学开始加强 Mongodb 的安全性, 其中一种办法就是设置复杂的密码. 那么问题来了, 如果设置的密码里包含一些如 "@", ":" 一样的特殊字符怎么办? mongodb://username:password@host:port/db 这种情况可能使得你的 Mongodb 连接串不能被正常解析, 并且完全有可能出现. 烦人的地方在于: 1.使用 "" 双引号将 password 包起来没有用 2,使用

  • mybatis xml中特殊字符处理及特殊符号

    下面给大家介绍mybatis xml 中特殊字符处理方法,具体内容如下所示:  1,CDATA区: 它的全称为character data,以"<![CDATA[ "开始,以" ]]>" 结束,在两者之间嵌入不想被解析程序解析的原始数据,解析器不对CDATA区中的内容进行解析,而是将这些数据原封不动地交给下游程序处理. 2,特殊字符 : xml 中表示:   <= 小于等于.    >= 大于等于 需加  这样的标记:     <![C

  • 在Python中过滤Windows文件名中的非法字符方法

    网上有三种写法: 第一种(所有非法字符都不转义): def setFileTitle(self,title): fileName = re.sub('[\/:*?"<>|]','-',title)#去掉非法字符 self.file = open(fileName + ".txt","w+") \非法字符必须转义,否则\/被解释为/ 第二种(所有非法字符都转义): def validateTitle(title): rstr = r"[

  • 微信小程序中转义字符的处理方法

    在微信小程序开发过程中,有时候会用到常用的一些特殊字符如:'<'.'>'.'&'.'空格'等,微信小程序同样支持对转义字符的处理,下面提供两种方法用来处理微信小程序中转义字符的处理. 1.官方API调用 这种方式,我们直接在wxml布局文件中,直接调用相关特殊符号的转义字符会无效,原因是小程序的text文本控件的decode属性没有打开导致的,看下文档说明: 从文档中,我们可以发现,decode属性默认为false,不会解析我们的特殊字符,我们通过设置decode属性为true,并且调

  • 基于网址URL中特殊字符转义编码

    目录 网址URL中特殊字符转义编码 URL特殊字符转义,URL中一些字符的特殊含义,基本编码规则如下: 如果需要在URL中用到,需要将这些特殊字符换成相应的十六进制的值 预备知识 为什么需要Url编码 哪些字符需要编码 US-ASCII字符集中没有对应的可打印字符 保留字符 不安全字符 如何对Url中的非法字符进行编码 Javascript中的escape,encodeURI和encodeURIComponent的区别 安全字符不同 兼容性不同 对Unicode字符的编码方式不同 适用场合不同

  • AngularJs中route的使用方法和配置

    angular是Google开发的一个单页面应用框架,是现在比较主流的单页面应用框架之一.该强大的地方有很多,比如双向数据绑定,应用了后端的MVC模式到前端,自定义指令等. 既然是单页面应用,肯定离不开页面的切换.我们首先来说一下angular的路由. angular实现页面切换时用了route. <script src="js/plugins/angular/angular.min.js"></script> <script src="js/p

  • 深入学习JavaScript的AngularJS框架中指令的使用方法

    指令(Directives)是所有AngularJS应用最重要的部分.尽管AngularJS已经提供了非常丰富的指令,但还是经常需要创建应用特定的指令.这篇教程会为你讲述如何自定义指令,以及介绍如何在实际项目中使用.在这篇文章的最后(第二部分),我会指导你如何使用Angular指令来创建一个简单的记事本应用. 概述 一个指令用来引入新的HTML语法.指令是DOM元素上的标记,使元素拥有特定的行为.举例来说,静态的HTML不知道如何来创建和展现一个日期选择器控件.让HTML能识别这个语法,我们需要

  • AngularJS入门教程二:在路由中传递参数的方法分析

    本文实例讲述了AngularJS在路由中传递参数的方法.分享给大家供大家参考,具体如下: 我们不仅可以在控制器中直接定义属性的值,比如: app.controller('listController',function($scope){ $scope.name="ROSE"; }); AngularJS还提供了传递参数的功能,目前我接触到的一种方式是从视图中传参: <!--首页html--> <li><a href="#/user/18"

随机推荐