任何人都可以告诉我如何从一大块文本中获取最后一句话。该文本可能至少有一个句子,或几个段落。而且,令人讨厌的是,它很可能以“......”结束。
这就是我设法凑到一起的东西,但最后给了不止一个完整的停止,这不会太好。
function last_sentence($content) {
$pos = strrpos($content, '.');
$pos_two = strrpos($content, '.', $pos - strlen($content) - 1);
if($pos_two === false) {
return $content;
}
else {
return substr($content, $pos_two+1);
}
} // end function
所以实质上是
$my_text="This is the first sentence. The second is here. And the third trails off in a frustrating fashion......"
有什么想法吗?
答案 0 :(得分:1)
$my_text = array_pop(array_filter(explode('.', $my_text), 'trim'));
将字符串转换为数组,删除所有空值,然后返回数组中的最后一项。