----- 019-regex_replace.php -----

 <!DOCTYPE html>
 <html>
 <head>
     <meta http-equiv="content-type" content="text/html; charset=utf-8">
     <title>Regex-Replace</title>
 </head>
 <body>
 <h1>Regex-Replace</h1>
 <pre style="font-family:微软雅黑; font-size:13pt">
 <?php
     $str = "喜羊羊灰太狼懒羊羊红太狼";
     echo '替换字符串 "<b>喜羊羊灰太狼懒羊羊红太狼</b>"', "\n\n";

     $result = preg_replace("/...羊羊/", " 樱桃小丸子 ", $str);
     echo "羊->丸子:", $result, "\n";

     $result = preg_replace("/...羊羊/", " 樱桃小丸子 ", $str, 1);
     echo "羊->丸子 一次:", $result, "\n";

     $result = preg_replace(array("/.{3}羊羊/", "/.{6}狼/"), array("羊", "狼"), $str);
     echo "羊与狼:", $result, "\n";

     $result = preg_replace_callback("/.../", "translate", $str, 11);
     echo "翻译前11个字符:", $result, "\n";

     $str = "熊大熊二";
     echo "<b>\n切割字符串</b>\n";
     $result = preg_split("/熊/", $str);
     echo "熊切割后:\n";
     var_export($result);
     $result = preg_split("/熊/", $str, -1, PREG_SPLIT_NO_EMPTY);
     echo "\n熊切割后忽略空白:\n";
     var_export($result);

     echo "<b>\n\n获取正则表达式</b>\n";
     $str = "<img src= >!!!";
     echo "获取正则表达式";
     echo "忽略大小写:", @sql_regcase($str), "\n";
     $str = "<img src= >!!";
     echo "转义&lt;img src= &gt;!!  ", preg_quote('<img src= >!!'), "\n";
     echo "转义>img src= >!!  ", preg_quote(">img src= >!!"), "\n";
 ?>
 <?php
     function translate($src)
     {
         $maps = array("喜"=>"Happy", "羊"=>"Sheep", "灰"=>"Gray", "太"=>"Too", "狼"=>"Wolf", "懒"=>"Lazy", "红"=>"Red");
         return $maps[$src[0]]." ";
     }
 ?>
 </pre>
 </body>
 </html>

php -- 正则替换的更多相关文章

  1. PHP模板引擎正则替换函数 preg_replace 与 preg_replace_callback 使用总结

    在编写PHP模板引擎工具类时,以前常用的一个正则替换函数为 preg_replace(),加上正则修饰符 /e,就能够执行强大的回调函数,实现模板引擎编译(其实就是字符串替换). 详情介绍参考博文:P ...

  2. php中的正则函数主要有三个-正则匹配,正则替换

    php中变量的声明? 由于php声明变量的时候, 不支持使用 var关键字, 又不能直接写一个变量名字, 孤零零的放在那里, 所以, 在php中声明变量的方式, 同时也是给变量初始化的形式, 即: & ...

  3. PHP函数preg_replace() 正则替换所有符合条件的字符串

    PHP preg_replace() 正则替换,与JavaScript 正则替换不同,PHP preg_replace() 默认就是替换所有符号匹配条件的元素. preg_replace (正则表达式 ...

  4. PHP preg_replace() 正则替换所有符合条件的字符串示例

    PHP preg_replace() 正则替换,与Javascript 正则替换不同,PHP preg_replace() 默认就是替换所有符号匹配条件的元素.  需要用程序处理的数据并不总是预先以数 ...

  5. 缓存需要注意的问题以及使用.net正则替换字符串的方法

    参考资料:http://www.infoq.com/cn/news/2015/09/cache-problems 正则替换字符串的简单方法: var regTableType = new Regex( ...

  6. Fiddler AutoResponder正则替换

    今天感冒,写简单些. Fiddler AutoResponder正则替换: regex:(?inx).+20150826_1_1_386.mp4/playlist.m3u8.*$ .表示任意字符 *: ...

  7. Regex 正则替换指定范围全部字符串

    1.正则替换字符-------------------------------------------------------------------------------------------- ...

  8. 正则替换replace中$1的用法以及常用正则

    一.repalce定义 用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串. stringObject.replace(regexp/substr,replacement)参数一 ...

  9. 使用正则替换script及其内容

    因做微信公众号文章保存,发现他的js大多数也用不着,所以就想着用正则替换掉源代码中的js片段 正则代码: <script(?:[^<]++|<(?!/script>))*+&l ...

  10. 【python】正则替换

    正则替换可以使用函数 例如:替换字符串中所有#1.2.3.4#格式中的数字为0 import re def replace(x): def _replace(matched): m = matched ...

随机推荐

  1. xmlns 实例分析

    <?xml version="1.0" encoding="UTF-8"?> <!-- Licensed to the Apache Soft ...

  2. DOS下如何打开程序

    cd c:    #先切回主盘,因为最开始在C:\Users\Administrator这个目录下 cd “指定文件所在的盘:”      #切换到文件所在盘 print "文件目录&quo ...

  3. android textview支持多种格式跳转

    http://www.linuxidc.com/Linux/2011-08/40530p2.htm 1.android:autoLink属性,使TextView中链接手机号码/网页/邮件/地图 and ...

  4. VirtualBox 安装 CentOS6.5 教程

    VirtualBox安装 CentOS6.5教程 1.选择第一个进行安装 2.选择右面的 skip 进入安装 3.点击next 4.选择中文简体 5.选择美式键盘 6.选择第一个 7.输入主机名 8. ...

  5. 关于分页插件PageHelper

    上课的时候学习了分页插件,感受到了它的强大,这里总结如下: 1.首先在spring配置文件中引入依赖jar包: <dependency> <groupId>com.github ...

  6. UniGUI的TUniLoginForm窗口自定义背景色和背景图片

    雨田家园 UniGUI的TUniLoginForm窗口自定义背景色 uniGUI的TUniLoginForm类创建的登录窗口默认是不带颜色,可以自定义css风格来改变背景颜色. 一般是通过在UniSe ...

  7. 在Delphi中处理word文档与数据库的互联 1

    在Delphi中处理word文档与数据库的互联 ---- 目前,Delphi被越来越多的人选中作为MIS系统开发中的前台工具.在以Delphi为前台,一些大型数据库为后台的MIS系统中,图形的处理不可 ...

  8. Windows 7 系统中开启 ASP.NET State Service 服务的方法

    控制面板 -> 程序和功能 -> “打开或者关闭 Windows 功能”对话框 -> Internet 信息服务 -> 万维网服务 -> 应用程序开发功能 -> A ...

  9. 工作随笔——elasticsearch数据冷热分离、数据冷备

    概述: 适合日志类型的数据存储方案.即当日数据写入,历史数据只读. 节省部分硬件成本.热数据采用更好的硬件. 环境: 已有6个ES节点,使用docker-compose方式搭建. es1:master ...

  10. VS2017 v15.8.0 Task ExpandPriContent failed. Illegal characters in path

    昨天更新了VS到最新版本v15.8.0,但是编译UWP出现了操蛋的bug. 谷歌一下,vs社区已经有答案了. 打开.csproj文件,在节点 <PropertyGroup> 里面,加上一行 ...