我一直在尝试使用:
$string="The Dr. is here!!! I am glad I'm in the U.S.A. for the Dr. quality is great!!!!!!";
preg_match_all('~.*?[?.!]~s',$string,$sentences);
print_r($sentences);
但是对Dr., U.S.A.等不起作用
有没有人有更好的建议?
最佳答案
对此没有任何简单的解决方案。您需要在您的应用程序中进行一些自然语言处理 (NLP) 并识别每个句子。有事打电话OpenNLP ,它是一个基于JAVA的NLP解析器工具。或者 Stanford NLP parser在 ruby 中。你可以为 php 找到类似的东西。
here我在 PHP 中找到了一组用于自然语言处理的类。
关于php - 如何将段落拆分成句子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2158296/