データベースのテキスト エントリから最初と最後の文を取得しようとしています。
私が持っているコードは、この例でうまく動作します:
$text = "He was doing ok so far, but this one had stumped him. He was a bit lost..."
機能:
function first_sentence($content) {
$pos = strpos($content, '.');
if($pos === false) {
return $content;
}
else {
return substr($content, 0, $pos+1);
}
} // end function
// Get the last sentence
function last_sentence($content) {
$content = array_pop(array_filter(explode('.', $content), 'trim'));
return $content;
} // end function
最後のセンテンス関数は、センテンスの末尾にある後続の ... を考慮に入れますが、どちらも次のものには対応できません。
$text = "Dr. Know-all was a coding master, he knew everything and was reputed the world over. But the Dr. was in trouble..."
結果: 最初の文: Dr. 最後の文: 困っていた
「Dr.」などを考慮して関数を変更する必要があります。可能であれば他のそのような略語を使用すると、最後のテキスト変数は次のようになります。
最初の文: Dr. Know-all はコーディングの達人であり、彼はすべてを知っていて、世界中で評判でした 最後の文: しかし Dr. は困っていました
それはできますか?どんな助けでも大歓迎です!