PHP 中需要将带有特殊字符的单词大写
ucwords 不会将 öüäõ 这样的外来字符大写,
所以我需要一个解决方案,它将“öösel”变成“Öösel”
是否有一种简单的方法可以使用正则表达式来完成此操作,或者我必须手动检查所有字符?
ucwords doesn't capitalize foreign chars like öüäõ
so I need a solution, which will make "öösel" into "Öösel"
Is there a simple way to do it with regexp or I have to check all the characters manually?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
如果您安装了 mbstring 扩展,则可以使用
mb_convert_case
函数,指定MB_CASE_TITLE
作为$mode
参数。If you have the mbstring extension installed, you can use the
mb_convert_case
function, specifyingMB_CASE_TITLE
as the$mode
parameter.你可以尝试一下 strtoupper(),它对我来说法语效果很好。抱歉,我没有看到它是 ucwords...
否则,这应该有效:
You can give a try to strtoupper() which works fine for me with French.Sorry I hadn't seen it was ucwords...
Otherwise, this should work:
除了其他与 ucwords 存在相同问题的答案之外,您还可以考虑保留 此变体在您的工具箱中。
Aside from the other answers, which suffer from the same problems as ucwords, you might take a look at keeping this variation in your toolbox.