Skip to main content
 首页 » 编程设计

python之如何从一段或一堆段落中找到标题大写短语

2025年05月04日14txw1958

我如何解析文章中的句子格短语。

例如从这段话

柯南道尔说,福尔摩斯这个角色的灵感来自于约瑟夫贝尔医生,道尔曾在爱丁堡皇家医院为他当过职员。与福尔摩斯一样,贝尔以从最小的观察中得出重要结论而著称。 [1] Michael Harrison 在 1971 年发表在 Ellery Queen's Mystery Magazine 上的一篇文章中指出,这个角色的灵感来自 Wendell Scherer,他是一起谋杀案的“咨询侦探”,据称 1882 年在英国受到了报纸的广泛关注。

我们需要生成柯南道尔、福尔摩斯、约瑟夫贝尔博士、温德尔谢尔等人。

如果可能,我更喜欢 Pythonic 解决方案

请您参考如下方法:

这种处理可能非常棘手。这个简单的代码几乎可以做正确的事情:

for s in re.finditer(r"([A-Z][a-z]+[. ]+)+([A-Z][a-z]+)?", text): 
    print s.group(0) 

产生:

Conan Doyle 
Holmes 
Dr. Joseph Bell 
Doyle 
Edinburgh Royal Infirmary. Like Holmes 
Bell 
Michael Harrison 
Ellery Queen 
Mystery Magazine 
Wendell Scherer 
England 

要包含“Dr. Joseph Bell”,您需要确定字符串中的句点,它允许出现在“Edinburgh Royal Infirmary. Like Holmes”中。

我遇到了类似的问题:Separating Sentences .