How to transform a string to lowercase with preg_replace(如何使用preg_place将字符串转换为小写)
问题描述
我只是停留在这个问题上,找不到解决方案。
我想尝试使用preg_replace
将字符串转换为小写。
我只是无法创建正确的正则表达式。
原因是正常的strtolower
不支持Unicode字符。
我知道我可以使用mb_strtolower
,但是这个函数似乎相当慢,而且并不是每个人都支持MB。
有什么线索吗?
问候您, RADEK
编辑:好的,非常感谢大家的帮助。我认为我的做法不太正确。 我认为最好使用这个:How do I detect non-ASCII characters in a string?,然后分别使用strtolower或mb_strtolower(如果可用)。
推荐答案
Regex本身无法更改字符,它只能更改字符顺序和/或添加/删除部分字符。
有preg_replace_callback或/e标志,但它们只能使用已知函数进行操作,因此不能比strtolower做得更好。
如果您不能依赖mb_strolow函数的存在,则必须自己实现它。
这篇关于如何使用preg_place将字符串转换为小写的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!