我正在解析一个html文本,以便使用strip_tags()获得纯文本,并且工作得非常好。但是生成的文本在逗号和点之后没有空格
结果示例:Lorem ipsum悲哀坐amet,consectetur。。。adipissing elit
我该如何将其转化为:Lorem ipsum悲哀坐amet,consectetur。。。令人愉快的elit
我想用
str_replace(',', ', ', $text);
但要检测一个或多个点,我认为这不是最好的解决方案。有没有办法把点后的第一个字母转换成大写?
我正在搜索一个格式化文本的函数,但运气不好。
谢谢!!
这里有一个在点后大写的函数
function sentence_case($string) {
$sentences = preg_split('/([.?!]+)/', $string, -1, PREG_SPLIT_NO_EMPTY|PREG_SPLIT_DELIM_CAPTURE);
$new_string = '';
foreach ($sentences as $key => $sentence) {
$new_string .= ($key & 1) == 0?
ucfirst(strtolower(trim($sentence))) :
$sentence.' ';
}
return trim($new_string);
}
print sentence_case('HMM. WOW! WHAT?');
// Outputs: "Hmm. Wow! What?"