@ReytexGames

Как сделать подсчёт совпадающих слов php?

Пример:
Переменная1 = "Катя, Марина, Миша"
Переменная2 = "Сегодня Катя пошла гулять. Миша и Марина пришли на площадку немного позже, Катя увидев их зразу же подбежала к ним"
Результат = 4

Слова из первой переменной встречаются во второй 4 раза. Как сделать подобный подсчёт? (Без учёта регистра)
  • Вопрос задан
  • 98 просмотров
Решения вопроса 1
gscraft
@gscraft
Программист, философ
Вхождения подстроки:
$names = explode(', ', mb_strtolower('Катя, Марина, Миша')); // обратите внимание на разделитель
$text = mb_strtolower('Сегодня Катя пошла гулять. Миша и Марина пришли на площадку немного позже, Катя увидев их зразу же подбежала к ним');
$count = 0;
foreach ($names as $name) $count += mb_substr_count($text, $name);
echo $count, PHP_EOL;

Вхождения слов, с учетом разделителей:
$names = implode('|', explode(', ', 'Катя, Марина, Миша'));
$text = 'Сегодня Катя пошла гулять. Миша и Марина пришли на площадку немного позже, Катя увидев их зразу же подбежала к ним';
$count = preg_match_all("/(^|\W+)($names)(\W+|$)/ui", $text);
echo $count, PHP_EOL;
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы