PHP 字符串 - 删除数组或单词并检查其他

标签 php arrays string match

我有一个字符串:

$data = "String contains works like apples, peaches, banana, bananashake, appletart";

我还有 2 个标准数组,如下所示,其中包含许多单词:

$profanityTextAllowedArray = array();
$profanityTextNotAllowedArray = array();

例如:

$profanityTextAllowedArray
(
    [0] => apples
    [1] => kiwi
    [2] => mango
    [3] => pineapple
)

如何获取字符串 $data 并首先从 $profanityTextAllowedArray 中删除任何单词,然后检查字符串 $data 中是否有任何单词$profanityTextNotAllowedArray 中应标记哪些单词?

最佳答案

$list = explode( ' ', $data );

foreach( $list as $key => $word ) {
  $cleanWord = str_replace( array(','), '', $word ); // Clean word from commas, etc.
  if( !in_array( $cleanWord, $profanityTextAllowedArray ) ) {
    unset($list[$key]);
  }
}

$newData = implode( ' ', $list );

如果清楚的话请告诉我。

关于PHP 字符串 - 删除数组或单词并检查其他,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15088333/

相关文章:

java - 为什么我的代码忽略异常?

java - (hello-> h3o) 如何替换字符串中的中间字母以获取替换字母的数量

javascript - 如何使用 PHP 判断哪个选择框的值已更改?

php - mktime() 到 mysql 日期时间列?

c - 无法从中断访问数组指针

javascript - 部分展平多维数组

javascript - 如何选择html表中的所有数据并使用ajax将其发送到我的数据库

php - Laravel 计划 :run command is not working

ruby - 如何从 Ruby 中的字符串中删除特定字符?

java - 理解 CaseInsensitiveComparator 中的逻辑