在每第三个句子的结尾添加一个单词

时间:2010-01-16 19:09:49

标签: php regex

我正在创建一个“有趣的翻译器”,我试图在每第三个句子的末尾添加一个单词。

它获取另一页HTML代码并将其翻译成青少年语言。但我想在每第三个句子上添加一个单词。我现在一直在使用这条线:

$str = preg_replace_callback('{<.*?[^>]*>([æøåÆØÅ !,\w\d\-\(\)]+)([<|\s|!|\.|:])</.*?>}',
"assIt", $str);

但它只会在句子被HTML代码包围时添加单词。

我认为我可以通过检查一个大字然后找到一个字母找到每个句子,但我真的不知道正则表达式。

任何人都知道如何让它发挥作用?

1 个答案:

答案 0 :(得分:1)

稍长一点,但是你可以使用explode()函数而不是regexp。

$sentences = explode('.', $str);
$numberOfSentences = count($sentences);
for($i = 0; $i < $numberOfSentences; $i++)
{
    if($i%3 == 2) {
        $sentences[$i] = $sentences[$i] . ' some fun string';
    }
}
echo implode('.', $sentences);

这应该这样做