ホームページ > php教程 > php手册 > php关于正则表达式的事

php关于正则表达式的事

WBOY
リリース: 2016-06-13 10:19:11
オリジナル
1031 人が閲覧しました

工作中,我们经常要用到正则表达式去匹配到我们想要的数据,甚至还会把匹配到的数据替换成我们需要的数据。这一切,似乎很难做到,但是如果你会熟练使用正则表达式,这些,就不是个菜了。


例1:$string为一个字符串,定义$patterns为一个基于索引的数组,

<?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);
?>

ログイン後にコピー


以上的例子会输出:

kemo|addidas|就是这样的|haha|2013-12-14 11:40:43|tengx|buyao 
ログイン後にコピー

以上例子我们可以把我们需要替换的值用索引数组的形式表达出来,然后一个一个的去替换,是不是很方便呢?



下面么再来看一个,我们需要把字符串里面的日期转当前的日期或者为我们需要的东西

例2:

<?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);
?>
ログイン後にコピー

以上的例子会输出:

kemo|addidas|就是这样的|haha|2013-12-14 12:07:55|weobo|lail
ログイン後にコピー







関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート