-2

あなたが持っているとしましょう:

$text1="私は晩中待つことができます";

$text2="一日中歌えます" ;

can両方のステートメントで同じであることがわかった 3 つの単語、つまり, for,を教えてくれる関数が必要ですall

ありがとう

4

3 に答える 3

3

単語の配列を取得するには、 explodeを使用できます。

$text1="i can wait for all night"; 
$text2="we can sing for all day";
$text1arr = explode(" ", $text1);
$text2arr = explode(" ", $text2);

次に、array_intersectを使用して一般的な単語を取得できます。

$result = array_intersect($text1arr , $text2arr);

最後に、count を使用して一般的な単語の数を取得できます。

$num_in_common = [count][3]($result);
于 2013-07-12T01:35:28.920 に答える
0

注意点として、SO はコーディング サービスではありません。また、質問者側の努力がないように見えるだけで、単純に回答を求められると、人々は満足しません。ただし、ここで少しだけ説明します。

このarray_intersect関数は、2 つ以上の配列を指定すると、入力間で共有されるすべての値の配列を返します。

値の位置を見つけることに関しては、array_search関数は配列内の値のキーを提供します。

array_intersectすべての配列が出力配列の値に対して同じキーを共有している場合、その値はすべての配列で共有され、同じ位置にあることがわかります。

これをすべて実装する方法はあなた次第です。

于 2013-07-12T01:47:00.653 に答える
0
$words1 = str_word_count($text1, 2);
$words2 = str_word_count($text2, 2);
$common_words = $result = array_intersect($words1, $words2);
$common_count = sizeof($common_words);
于 2013-07-12T01:37:57.713 に答える