工作中,我们经常要用到正则表达式去匹配到我们想要的数据,甚至还会把匹配到的数据替换成我们需要的数据。这一切,似乎很难做到,但是如果你会熟练使用正则表达式,这些,就不是个菜了。
例1:$string为一个字符串,定义$patterns为一个基于索引的数组,
立即学习“PHP免费学习笔记(深入)”;
<?php
date_default_timezone_set("Asia/Shanghai");
$string = 'kemo|addidas|就是这样的|haha|2013-12-13 09:00:09|weobo|lail';
$patterns = array();
$patterns[0] = '/2013-12-13 09:00:09/';
$patterns[1] = '/weobo/';
$patterns[2] = '/lail/';
$replacements = array();
$replacements[2] = date('Y-m-d H:i:s',time());
$replacements[1] = 'tengx';
$replacements[0] = 'buyao';
echo preg_replace($patterns, $replacements, $string);
?>
立即学习“PHP免费学习笔记(深入)”;
以上的例子会输出:
立即学习“PHP免费学习笔记(深入)”;
kemo|addidas|就是这样的|haha|2013-12-14 11:40:43|tengx|buyao
立即学习“PHP免费学习笔记(深入)”;
以上例子我们可以把我们需要替换的值用索引数组的形式表达出来,然后一个一个的去替换,是不是很方便呢?
下面么再来看一个,我们需要把字符串里面的日期转当前的日期或者为我们需要的东西
例2:
立即学习“PHP免费学习笔记(深入)”;
<?php
date_default_timezone_set("Asia/Shanghai");
$string = 'kemo|addidas|就是这样的|haha|2013-12-13 09:00:09|weobo|lail';
$pattern = '/\d{4}-\d{2}-\d{2}\s+\d{2}:\d{2}:\d{2}/';
$replacement = date('Y-m-d H:i:s',time());
echo preg_replace($pattern, $replacement, $string);
?>
立即学习“PHP免费学习笔记(深入)”;
立即学习“PHP免费学习笔记(深入)”;
kemo|addidas|就是这样的|haha|2013-12-14 12:07:55|weobo|lail
立即学习“PHP免费学习笔记(深入)”;
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号