将字符串的第一个字母大写(前面带有特殊字符)-PHP
我想大写一个字符串,比如:将字符串的第一个字母大写(前面带有特殊字符)-PHP,php,regex,preg-match,Php,Regex,Preg Match,我想大写一个字符串,比如: ¿"hello"? 我希望我的函数返回 ¿"Hello"? 我试过regex和preg_match,但运气不好。。。 这是我之前的问题,与此相关: 谢谢大家! 尝试ucfirst功能 这样的任务不需要正则表达式 样品 $foo = 'hello world!'; $foo = ucfirst($foo); // Hello world! 您可以使用以下方法进行操作: 使用上述ascii时间的preg_replace_回调,但与unico
¿"hello"?
我希望我的函数返回
¿"Hello"?
我试过regex和preg_match,但运气不好。。。
这是我之前的问题,与此相关:
谢谢大家! 尝试
ucfirst
功能
这样的任务不需要正则表达式
样品
$foo = 'hello world!';
$foo = ucfirst($foo); // Hello world!
您可以使用以下方法进行操作:
使用上述ascii时间的preg_replace_回调,但与unicode兼容:
echo preg_replace_callback('/^(\PL*)(\pL)/u', function($matches){
return $matches[1] . mb_strtoupper($matches[2],'UTF-8');
}, '¿"éllo"?'),"\n";
输出:
¿"Éllo"?
这接近解决方案了,现在我想我在正则表达式上遇到了问题,因为当我的字符串是'sta prueba'时,这个函数返回'sta prueba',但预期的是'sta prueba',这里是发布的最终解决方案:
¿"Éllo"?