1

substr_count を使用して、単語が使用された回数をカウントしています。しかし、私が望む結果を返していません。ここに私のサンプルコードがあります:

<?php
    echo substr_count("The Hello world. Therefore the world is nice","the");
?>

これは、3 つの文字列である数値 3 を返します。2つあるので、2.だけを返したい。3 つ目は単語の一部であるため、the ではありません。正規表現を考えましたが、あまり得意ではありません。助言がありますか ?

4

5 に答える 5

3

の後にスペースを追加する必要があります。これは、その後にスペースがあるtheものだけを含めることができますthe

  <?php
        echo substr_count("The Hello world. Therefore the world is nice","the ");
    ?>
于 2012-11-02T04:36:47.267 に答える
1

部分文字列の出現をカウントする別の方法を次に示します。

<?php
 $string = "The Hello world. Therefore the world is nice";
 $substring = 'the';

 $cArr = explode($substring,strtolower($string));
 echo $substring_count = count($cArr) - 1;
?>

また

$wordCounts = array_count_values(str_word_count(strtolower($string),1));
echo $theCount = (isset($wordCounts['the'])) ? $wordCounts['the'] : 0;
于 2012-11-02T04:45:22.257 に答える
0

3 'the's があります。したがって、

これを試して:

<?php
   echo substr_count("The Hello world. Therefore the world is nice","the ");
?>
于 2012-11-02T04:38:08.767 に答える
0

substr_count の使い方が違うと思います。構文:

 int substr_count ( string $haystack , string $needle [, int $offset = 0 [, int $length ]] )

substr_count() は、haystack 文字列内で針部分文字列が出現する回数を返します。針は大文字と小文字が区別されることに注意してください。

http://php.net/manual/en/function.substr-count.phpを参照 してください。

于 2012-11-02T04:32:45.707 に答える