-1

如果字符串显示:

曾几何时,一个年轻的小LKTgoblingLKT发生了不幸的事故而LKTfellLKT。

我如何将其中包含的每个内容提取LKT到一个数组中并在字符串中替换它们。

4

1 回答 1

1

您可以尝试以下解决方案:

  • 将句子存储在变量中
  • explode()以空格为分隔符的句子
  • 循环遍历数组
  • 检查单词是否包含您的字符串使用strpos()
  • 如果是,则将单词推入结果数组

像这样的东西:

$string = '...';
$words = explode(' ', $string);
foreach ($words as $word) {
    if (strpos($word, 'LKT') !== FALSE) {
        $result[] = $word;
    }
}
print_r($result);

输出:

Array
(
    [0] => LKTgoblingLKT
    [1] => LKTfellLKT.
)

演示!


如果您想将字符串替换为另一个单词,可以使用str_replace()and implode(),如下所示:

$string = '...';
$words = explode(' ', $string);
$result = array();

foreach ($words as $word) {
    if (strpos($word, 'LKT') !== FALSE) {
        $word = str_replace($word, 'FOO', $word);
    }
        $result[] = $word;
}

$resultString = implode(' ', $result);
echo $resultString;

输出:

Once upon a time a small young FOO had an unfortunate accident and FOO

演示!

于 2013-09-15T14:36:14.403 回答