使用preg_replace()和regex用小写替换大写字符串

时间:2015-12-22 16:32:08

标签: php regex preg-replace

是否可以使用preg_replaceregex使用小写替换大写字母?

例如:

以下字符串:

$x="HELLO LADIES!";

我想将其转换为:

 hello ladies!

使用preg_replace()

 echo preg_replace("/([A-Z]+)/","$1",$x);

1 个答案:

答案 0 :(得分:20)

我认为这是你想要完成的事情:

$x="HELLO LADIES! This is a test";
echo preg_replace_callback('/\b([A-Z]+)\b/', function ($word) {
      return strtolower($word[1]);
      }, $x);

输出:

hello ladies! This is a test

Regex101演示:https://regex101.com/r/tD7sI0/1

如果你只是希望整个字符串都是小写的,而不仅仅是在整个事情上使用strtolower