是否可以使用preg_replace
和regex
使用小写替换大写字母?
例如:
以下字符串:
$x="HELLO LADIES!";
我想将其转换为:
hello ladies!
使用preg_replace()
:
echo preg_replace("/([A-Z]+)/","$1",$x);
答案 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
。