如何识别 UTF-8 字符串中的小写字符?

How do I recognise lowercase characters in a UTF-8 string?

提问人:UlfDunkel 提问时间:11/9/2023 最后编辑:UlfDunkel 更新时间:11/9/2023 访问量:45

问:

在 PHP 中,我想以不同于小写字符和大写字符的方式处理 UTF-8 格式的给定字符串。

对于大多数字符串,ctype_lower() 工作正常。但它不识别例如德语变音符号。

我还可以使用哪个其他 PHP 函数来检测 UTF-8 字符串中的小写字符?

这是我的PHP函数,我用它来创建一个带有小写字母的字符串。

function small_caps(

$string)
{
   $buf = "";

   $results = array();
   $results = mb_str_split($string);


   for ($i = 0; $i < count($results); $i++)
   {
      $char = $results[$i];

      if (ctype_lower($char))
         $buf .= "<small>$char</small>";
      else
         $buf .= "<b>$char</b>";
   }

   // remove redundancies
   $buf = str_replace("</small><small>","",$buf);

   return "<span style='text-transform:uppercase'>$buf</span>";
}
PHP Unicode 字符 小写字母

评论

2赞 brombeer 11/9/2023
也许更慢
1赞 UlfDunkel 11/9/2023
谢谢你的提示,@brombeer。我找到了这个解决方案:if (IntlChar::isULowercase($char))

答: 暂无答案