比较两个字符串和显示字符串中的不匹配单词的数字



我知道比较两个Strings的技术和方法很多,并确定两个Strings是否相等。我想做这样的事情:

Var Str1 = "Hello How are you?";
var Str2 = "Hello I am ravi.";

str2str1进行比较,并显示不匹配单词的数字计数。两个字符串每个都包含4个单词。它应该显示您错过了str1中的三个单词。

我有一个网页(Web任务),用户需要侦听音频并将其转录。因此,我想知道用户从转录的原始音频中错过了多少个单词。

这很简单,就像将两个字符串转换为数组,然后计算数组的差异。

$arr1 = explode(' ', strtolower($str1));
$arr2 = explode(' ', strtolower($str2));
echo 'You missed ' . count(array_diff($arr1, $arr2)) . ' words from str 1';

使用爆炸以将Strings转换为Arrays并计算两个Arrays

之间的差异
$Str1 = "Hello How are you?";
$Str2 = "Hello I am ravi";
$st1 = (explode(" ", $Str1));
$st2 = (explode(" ", $Str2));

$result = array_diff($st1, $st2);
echo count($result);

php

中的两个字符串之间的差异和格式差异

尝试以下操作:https://coderwall.com/p/3j2hxq/find-and-and-format-difference-bet-----------------in-php-in-php

您可以修剪像',','?''之类的字符在字符串中。然后将其传输到单词数组,然后删除副本。最后比较用户输入数组和标准数组之间的差异。

// parse a string to array
function words($string)
{
    return array_unique(explode(' ', str_replace(['?', '.', ','], '', $string)));
}
dd(array_diff(words($array2), words($array1)));  //here user input array2 is the first parameter.

最新更新