2016-11-23 134 views
0

我刮了几篇文章并将其收集到一个文本文件中。从这些文章中,我想提取全部使用大写的话:用大写字母匹配单词上的正则表达式多行文本中的正则表达式

这是收集物品的一个样本:

"|[<p>Advertisement , By Milan Schreur and  Alissa J. Rubin OCT. 5, 2016 
, BRUSSELS — A man wounded two police officers with a knife in Brussels around noon on Wednesday in what the authorities called “a potential terrorist attack.” , ....]" 

我想提取什么是所有那些大写输入的单词锁,在这种情况下,单词“布鲁塞尔”,但在文件中还有更多。所以我想提取所有完全由大写字母组成的单词。

我试着像这样的东西:

import re 

text_open = open("Training_News_6.csv") 
text_read = text_open.read() 
articles = text_read.split("<p>") 
pattern = re.findall("\s[A-Z]{4,}\s",'\n'.join(articles)) 
print(pattern) 
+1

're.findall'接受字符串或类似字节的对象,并向它传递一个列表! – Kasramvd

+1

'articles'是一个列表。要传递一个字符串,只需再次使用换行符:'pattern = re.findall(“[\ S \ s] + [AZ] {3,}”,'\ n'.join(articles))' –

+0

你完全想要世界“Alissa J. Rubin”吗? – Kasramvd

回答

0

articles是一个列表,你做text_read.split后。 re.findall正在等待一个字符串。