如何从备用正则表达式中选择第一个匹配项?

问题描述 投票:0回答:1

我正在尝试从以“ https:...”开头的URL之前的推文中提取所有文本。

示例推文:

“由于冠状病毒,这种传统发型又重新流行起来,肯尼亚人正在使用它来提高知名度https:// ...(通过@QuickTake播放视频)“

在此示例中,我想删除“ https:// ...(通过@QuickTake的视频)”并从头开始获取文本。 但是当tweet在tweet文本中没有任何URL链接时,它也应该起作用。

我已经尝试过此表达式,并在URL附带时得到两个匹配项:

/(.*)(?=\shttps.*)|(.*)

如何使它仅检索来自推文的文本。

提前感谢!

python regex tweepy tweets
1个回答
0
投票

这可能过于简化,但是简单的str.find可能会成功:

>>> s = "This traditional hairdo is back in fashion thanks to the coronavirus, and Kenyans are using it to raise awareness https://... (Video via @QuickTake)"
>>> s[:s.find('https://')]
'This traditional hairdo is back in fashion thanks to the coronavirus, and Kenyans are using it to raise awareness '

您基本上只是将推文编入索引,直到找到"https://"的第一个实例。

© www.soinside.com 2019 - 2024. All rights reserved.