在str_word_count()中将收缩计为2个单词而不是1个

时间:2016-06-18 23:51:27

标签: php

我正在尝试获取字符串的字数,但我想将收缩计为2个字而不是1.有没有办法用str_word_count()来做?

$string = "i'm not";
$count = str_word_count($string);

echo $count;

结果:

2

想要结果:

3

3 个答案:

答案 0 :(得分:1)

正如您在this article中所看到的,英语中有许多收缩(有些我以前从未见过 - 有些不再使用了)。因此,以下建议并非详尽无遗,

您可以决定忽略最多,并专注于n't'd're's'll - 随时添加更多内容。 然后,计算字符串中的单词(使用str_word_count)并搜索上面的子字符串,为每个子字符串添加1。

答案 1 :(得分:0)

你可以通过这种方式绕过:

$string = "i'm not";
$replacements = array('"', "'");
$count = str_word_count(str_replace($replacements, " ", $string));

echo $count; // output 3

答案 2 :(得分:-1)

您可以计算出现的撇号数量,并将其与str_word_count中的单词数相加。

$string = "i'm not";
$count = str_word_count($string);
$count += substr_count($string, "'");

echo $count;
// $count == 3