Как найти любое слово из исходной строки в целевой строке и удалить все совпадающие слова из целевой строки в PHP

#php

#php

Вопрос:

 $str_source = "CLOBETASOL PROPIONATE";
$str_target = "CLOBETASOL 0.05% CREAM TUBE";
  

Теперь я хочу сравнить оба слова $str_source с $str_target , а затем я хочу удалить совпадающие слова из $str_target . Итак, моя последняя строка после всех операций будет 0.05% CREAM TUBE .

Для приведенного ниже случая я использую str_replace , и он работает нормально.

 $str_source = "CLOBETASOL PROPIONATE";
$str_target = "CLOBETASOL PROPIONATE 0.05% CREAM TUBE";
  

Ответ №1:

вы можете сравнить количество строковых слов, а затем взорвать оба и найти diff, а затем взорвать его.

 <?php

$str_source = "CLOBETASOL PROPIONATE";
$str_target = "CLOBETASOL PROPIONATE 0.05% CREAM TUBE";

if(str_word_count($str_target) >= str_word_count($str_source)){
    echo $finalStringarray = implode(' ',array_diff(explode(' ',$str_target),explode(' ',$str_source)));
}
if(str_word_count($str_source) >= str_word_count($str_target)){
    echo $finalStringarray = implode(' ',array_diff(explode(' ',$str_source),explode(' ',$str_target)));
}
  

https://3v4l.org/p3o8n