从文本文件中提取不同的链接?

2024-10-01 15:44:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我的问题是,我有一个非结构化的.txt文件,比如下面的文件,它包含不同的链接,因为每个链接中都有一个签名:

Sample of the text file

我想要的是提取以http://开头的所有链接网址:www.alphorm.com你知道吗

我使用的正则表达式如下所示:

matchObj = re.findall(r'(http:// web.alphorm.com/.*&Key-Pair-Id=APKAJF2PMCJPGKXG2GEA)"}',
                      string)

但它并没有给我想要的。它缩小文本文件,并给我搜索的链接,但随着其他不受欢迎的链接和文本!你知道吗

怎么了?你知道吗


Tags: 文件ofthesampletexttxtcomhttp
1条回答
网友
1楼 · 发布于 2024-10-01 15:44:06

正则表达式中的.*是贪婪的,这意味着解析引擎将匹配第一个匹配的http://web.alphorm.com/,最后一个匹配的&Key-Pair-Id=APKAJF2PMCJPGKXG2GEA,以及之间的所有内容。你知道吗

试试这个:

matchObj = re.findall(r'(http://web.alphorm.com/.*?&Key-Pair-Id=APKAJF2PMCJPGKXG2GEA)"}',string)

添加?将使匹配延迟,匹配尽可能少。你知道吗

注意:我还删除了http://web.alphorm.com之间的空格,因为我认为这是一个打字错误。你知道吗

相关问题 更多 >

    热门问题