python regex来查找包含文本“abc123”的任何链接

2024-09-29 06:30:58 发布

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

我正在使用Beautuly soup查找所有href标记。在

links = myhtml.findAll('a', href=re.compile('????'))

我需要找到所有在href文本中有'abc123'的链接。在

我需要正则表达式的帮助,明白吗???在我的代码片段中。在


Tags: 代码标记文本re链接linkshrefcompile
3条回答

"abc123"应该给你想要的

如果这不起作用,than BS可能正在使用re.match,在这种情况下,您需要".*abc123.*"

如果你想要所有的链接都是“abc123”,你可以简单地把:

links = myhtml.findAll('a', href=re.compile('abc123'))

如果'abc123'是您想要搜索的内容,在href中的任何地方,那么其他答案所建议的{}是正确的。如果要匹配的实际字符串包含标点符号,例如'abc123.com',请改用

re.compile(re.escape('abc123.com'))

re.escape部分将“转义”任何标点符号,这样它就可以按字面意思理解,就像字母数字一样;没有它,一些标点符号会被RE的引擎以各种方式解释,例如上面例子中的点('.')将被视为“任何单个字符”,因此re.compile('abc123.com')将匹配,例如'abc123zcom'(以及许多其他类似性质的字符串)。在

相关问题 更多 >