在试图弄清楚如何拥有一个有效的字符串单词计数器之后,我知道 PHP 具有的现有功能,str_word_count
但不幸的是它没有做我需要它做的事情,因为我需要计算包含英语的单词数量、中文、日文等重音字符。
但是str_word_count
,除非您在第三个参数中添加字符,否则无法计算单词的数量,但这太疯狂了,这可能意味着我必须添加中文、日语、重音字符(等)语言中的每个字符,但这不是我的需要。
测试:
str_word_count('The best tool'); // int(3)
str_word_count('最適なツール'); // int(0)
str_word_count('最適なツール', 0, '最ル'); // int(5)
无论如何,我在网上找到了这个功能,它可以完成这项工作,但遗憾的是它没有计数:
function word_count($str)
{
if($str === '')
{
return 0;
}
return preg_match_all("/\p{L}[\p{L}\p{Mn}\p{Pd}'\x{2019}]*/u", $str);
}
测试:
word_count('The best tool') // int(3)
word_count('最適なツール'); // int(1)
// With spaces
word_count('最 適 な ツ ー ル'); // int(5)
基本上我正在寻找一个好的 UTF-8 支持的单词计数器,它可以计算每个典型单词/重音/语言符号中的单词 - 有没有可能的解决方案?