我有一些新闻标题,我想摘录标题中涉及的公司名称。下面是一个例子
headlines = [
"Chicago Policemen's Annuity & Benefit Fund hired Chicago Equity Partners to manage $50 million in active U.S. smidcap value equity.",
"Belmont Contributory Retirement System is searching for at least one U.S. small-cap equity manager to run initially up to $5 million.",
"Phoenix Employees' Deferred Compensation Board will begin a search for an investment consultant before the end of February."
]
如您所见,这里的模式是,感兴趣的公司名称是第一个大写单词链。第二个大写单词链是第二个公司。你知道吗
在我们的示例中,我想返回两个变量,它们都与提取连续的大写字母有关。因此,它将返还“芝加哥警察年金和福利基金”、“贝尔蒙特缴费退休制度”和“凤凰城员工递延薪酬委员会”
有没有办法用Python中的正则表达式进行提取?你知道吗
此正则表达式将找到标题样式的表达式:
您可以看到完整的测试here
对于给定的示例,maybe is是一个选项,用于匹配连续的大写单词,直到遇到空格和小写字符或字符串结尾。你知道吗
^{}
解释
^
(?:
[A-Z]
[A-Z]+?
)+
并重复一次或多次(?=
,断言接下来的是[a-z]
|
或$
)
在这种情况下,匹配将停止,直到遇到空格和小写字符为止,但是您可以将character类扩展到
[a-z&]
,以便在遇到空格和符号时停止匹配。你知道吗只是为了让你走上正确的方向
步骤1:分割字符串(分隔符是空格)
步骤2:检查位置0处的字符是否大写
步骤3:将子字符串添加/附加到
your company name
第四步:重复第二步和第三步,直到第二步失败,然后你有你的公司名称。你知道吗
有关切片的更多帮助: https://www.pythoncentral.io/cutting-and-slicing-strings-in-python/
相关问题 更多 >
编程相关推荐