【发布时间】:2017-10-16 09:11:12
【问题描述】:
我知道 php 中的 preg_replace 函数 — 执行正则表达式搜索和替换,搜索主题以匹配模式并用替换替换它们,例如:
<?php
$string = 'The quick brown fox jumps over the lazy dog.';
$patterns = array();
$patterns[0] = '/quick/';
$patterns[1] = '/brown/';
$patterns[2] = '/fox/';
$replacements = array();
$replacements[2] = 'bear';
$replacements[1] = 'black';
$replacements[0] = 'slow';
echo preg_replace($patterns, $replacements, $string);
?>
结果将是:
熊黑慢跃过懒狗。
但是我有另一个示例,我不理解搜索和模式中的字符,有人可以告诉我这里发生了什么吗?:
<?php
$patterns = array ('/(19|20)(\d{2})-(\d{1,2})-(\d{1,2})/',
'/^\s*{(\w+)}\s*=/');
$replace = array ('\3/\4/\1\2', '$\1 =');
echo preg_replace($patterns, $replace, '{startDate} = 1999-5-27');
?>
结果将是:
$startDate = 1999 年 5 月 27 日
谢谢
【问题讨论】:
-
@sam 对其进行查找替换操作的字符串
-
我只是讨厌这里的 一些 用户有多糟糕......他们总是对这样的普通问题投反对票......需要永远支持...
-
@MarkBaker 感谢 asnwer
-
您可能还会发现regex101.com 很有用,不仅可以用于测试正则表达式,还可以解释它们的作用
标签: php