英文分句/分段落

WBOY
Freigeben: 2016-07-25 08:50:44
Original
1897 Leute haben es durchsucht
php环境,指出一个原本分句的时候的误区,分句不用考虑小数点,不用考虑域名,因为标准的句子是句号后面加空格的,唯一要考虑的就是Mr. Li 这种。
先采用分段落的方式是考虑到有些引用采用冒号结尾。
  1. /*TWWY'S ART*/
  2. function break_passage($text){ //分割段落
  3. return preg_split("/(\r|\n|\r\n)/", $text, -1, PREG_SPLIT_NO_EMPTY);
  4. }
  5. function break_sentence($text){ //分割句子 英文的句号后面必须有空格
  6. $re = '/# Split sentences on whitespace between them.
  7. (? [.!?] # Either an end of sentence punct,
  8. | [.!?][\'"] # or end of sentence punct and quote.
  9. ) # End positive lookbehind.
  10. (? Mr\. # Skip either "Mr."
  11. | Mrs\. # or "Mrs.",
  12. | Ms\. # or "Ms.",
  13. | Jr\. # or "Jr.",
  14. | Dr\. # or "Dr.",
  15. | Prof\. # or "Prof.",
  16. | Sr\. # or "Sr.",
  17. # or... (you get the idea).
  18. ) # End negative lookbehind.
  19. \s+ # Split on whitespace between sentences.
  20. /ix';
  21. $sentences = preg_split($re, $text, -1, PREG_SPLIT_NO_EMPTY);
  22. return $sentences;
  23. }
  24. function get_sentence($text){ //先分割段落再分割句子 [推荐]
  25. $passage = break_passage($text);
  26. $return = array();
  27. foreach ($passage as $key => $value) $return = array_merge($return, break_sentence($value));
  28. return $return;
  29. }
  30. ?>
复制代码


Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!