php进阶:正则表达式的搜索和替换
来源:互联网 发布:y系列电动机技术数据 编辑:程序博客网 时间:2024/05/22 05:27
正则表达式的搜索和替换
正则表达式的搜索与替换在某些方面具有重要用途,比如调整目标字符串的格式,改变目标字符串中匹配字符串的顺序等。
例如我们可以简单的调整字符串的日期格式:
$string = 'April 15, 2014';$pattern = '/(\w+) (\d+), (\d+)/i';$replacement = '$3, ${1} $2';echo preg_replace($pattern, $replacement, $string); //结果为:2014, April 15
其中${1}与$1的写法是等效的,表示第一个匹配的字串,$2代表第二个匹配的。
通过复杂的模式,我们可以更加精确的替换目标字符串的内容。
$patterns = array ('/(19|20)(\d{2})-(\d{1,2})-(\d{1,2})/', '/^\s*{(\w+)}\s*=/');$replace = array ('\3/\4/\1\2', '$\1 =');//\3等效于$3,\4等效于$4,依次类推echo preg_replace($patterns, $replace, '{startDate} = 1999-5-27'); //结果为:$startDate = 5/27/1999//详细解释下结果:(19|20)表示取19或者20中任意一个数字,(\d{2})表示两个数字,(\d{1,2})表示1个或2个数字,(\d{1,2})表示1个或2个数字。^\s*{(\w+)\s*=}表示以任意空格开头的,并且包含在{}中的字符,并且以任意空格结尾的,最后有个=号的。
用正则替换来去掉多余的空格与字符:
$str = 'one two';$str = preg_replace('/\s+/', ' ', $str);echo $str; // 结果改变为'one two'
任务
将目标字符串$str中的文件名替换后增加em标签,例如index.php要替换成<em>index.php</em>。
<?php
$str = '主要有以下几个文件:index.php, style.css, common.js';
//将目标字符串$str中的文件名替换后增加em标签
$str = preg_replace('/\w+\.\w+/i','<em>$0</em>',$str);
echo $str;
0 0
- php进阶:正则表达式的搜索和替换
- 正则表达式的搜索和替换
- preg_replace -- 执行正则表达式的搜索和替换
- php 正则搜索和替换 preg_replace
- Notepad++的正则表达式替换和替换
- preg_replace()函数。该函数执行正则表达式的搜索和替换。
- VS2008查找和替换的正则表达式
- 用到的正则表达式和替换
- 正则表达式的匹配,替换和切割
- php ereg_replace -- 替换正则表达式
- php 正则表达式 进行替换
- 正则表达式的进阶
- sublime搜索和替换--正则
- UltraEdit正则表达式搜索替换小技巧
- UltraEdit正则表达式搜索替换小技巧
- UltraEdit正则表达式搜索替换小技巧
- UltraEdit正则表达式搜索替换小技巧
- UltraEdit正则表达式搜索替换小技巧
- 二叉树查找树的基本操作
- tomcat配置虚拟主机【一个ip对应几个域名】
- 数据类型的选用
- 如何在ScrollView中嵌套ListView
- iOS个人整理35-即时通信1 XMPP openfire 登录注册
- php进阶:正则表达式的搜索和替换
- java static关键字用法详解
- STM32——按键
- linux基础(三)
- oracle的sqlldr的使用总结
- java总结输入流输出流
- Android Studio系列教程四--Gradle基础
- 设计模式——策略模式
- Android开发Eclipse常用快捷键