簡體   English   中英

PHP字符串-刪除數組或單詞並檢查其他

[英]PHP String - Remove Array or Words & Check for Others

我有一個字符串:

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

我還有2個std數組,其中包含許多單詞:

$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 );

讓我知道是否清楚。

這樣的事情可以幫助您:

$data = "apples, peaches, banana, bananashake, appletart";

$allowedWords = array('apples', 'peaches', 'banana');
$notAllowedWords = array('foo', 'appletart', 'bananashake');

$allowedWordsFilteredString = preg_replace('/\b('.implode('|', $allowedWords).')\b/', '', $data);

$wordsThatNeedsToBeFlagged = array_filter($notAllowedWords, function ($word) use ($allowedWordsFilteredString) {
    return false !== strpos($allowedWordsFilteredString, $word);
});

var_dump($wordsThatNeedsToBeFlagged);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM