国内最全IT社区平台 联系我们 | 收藏本站
华晨云阿里云优惠2
您当前位置:首页 > php开源 > php教程 > php正则替换变量中的指定字符

php正则替换变量中的指定字符

来源:程序员人生   发布时间:2014-06-12 05:34:31 阅读次数:2210次

第一种方法,代码如下:

  1. <?php 
  2. $str = preg_quote('(银子)'); 
  3. $txt = '我的呢称(银子)'
  4. echo preg_replace("/($str)/","<span style='color:#f00;'>$1</span>",$txt); 
  5. ?> 

第二种方法,代码如下:

  1. <?php 
  2. $str = quotemeta('(银子)'); 
  3. $txt = '我的呢称(银子)'
  4. echo preg_replace("/($str)/","<span style='color:#f00;'>$1</span>",$txt); 
  5. ?> 

第三种方法,代码如下:

  1. <?php 
  2. $str = '(银子)'
  3. $txt = '我的呢称(银子)'
  4. echo preg_replace("/(Q$strE)/","<span style='color:#f00;'>$1</span>",$txt); 
  5. ?> 

三种方法都返回同样结果.. PHP中的Perl风格正则与Perl完全一样.连quotemeta也是通用的..

一些其它关于正则的实例,代码如下:

  1. $text  = “foobar123fooabcbar”; 
  2. $text = preg_replace(“/foo(?=bar)/”, “***”, $text); 
  3. //匹配bar前面的位置 ***bar123fooabcbar 
  4.  
  5. $text  = “foobar123fooabcbar”; 
  6. $text = preg_replace(“/(?<=bar)123/”, “***”, $text); 
  7. //匹配bar后面的位置  foo***123fooabcbar 
  8.  
  9. $text  = “foobar123fooabcbar”; 
  10. $text = preg_replace(“/foo(?!bar)/”, “***”, $text); 
  11. //匹配后面跟的不是bar的位置       foobar123***abcbar 
  12.  
  13. $text  = “foobar123fooabcbar”; 
  14. $text = preg_replace(“/(?<!foo)bar/”, “***”, $text); 
  15. //匹配前面不是foo的位置 foobar123fooabc*** 
生活不易,码农辛苦
如果您觉得本网站对您的学习有所帮助,可以手机扫描二维码进行捐赠
程序员人生
------分隔线----------------------------
分享到:
------分隔线----------------------------
关闭
程序员人生