如何从php中的文本块中获取最后一句话

时间:2013-10-09 15:18:22

标签: php

任何人都可以告诉我如何从一大块文本中获取最后一句话。该文本可能至少有一个句子,或几个段落。而且,令人讨厌的是,它很可能以“......”结束。

这就是我设法凑到一起的东西,但最后给了不止一个完整的停止,这不会太好。

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......"

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

$my_text = array_pop(array_filter(explode('.', $my_text), 'trim'));

将字符串转换为数组,删除所有空值,然后返回数组中的最后一项。