字符串的第一个字母大写(前面有特殊字符)-PHP

2022-03-29 00:00:00 regex php preg-match

我想要大写如下的字符串:

¿"hello"?

我希望我的函数返回

¿"Hello"?

我尝试过regex和preg_Match,但没有成功... 这是我之前的问题,与这个问题相关: "preg_match is matching two characters when it should only match one"

谢谢大家!


解决方案

可以使用preg_replace_callback:

preg_replace_callback('/^([^a-z]*)([a-z])/i', function($matches){
    return $matches[1] . strtoupper($matches[2]);
}, '¿"hello"?');

// ¿"Hello"?

相关文章