preg_replace没有按照我预期的方式工作


preg_replace not working how I expect

我是 php 新手,我在preg_replace遇到问题。 我使用的是 php 版本 5.3.2,我有以下代码行:

$minYear = preg_replace("/('s)|(now)/g", "", $minYear);

在这行代码之前,$minYear包含字符串now-6

在这行代码之后,$minYear是一个空字符串。 我希望它有-6

我已经尝试过在正则表达式模式中使用和不使用括号。

我做错了什么?

PHP 正则表达式中没有g标志,因为替换始终是全局的。您还可以从正则表达式中删除不必要的分组。

您可以使用:

$minYear = preg_replace('/'s|now/', "", $minYear); // -6