我使用beautifuly汤来查找所有的href标签。python正则表达式来查找任何包含文本'abc123'的链接
links = myhtml.findAll('a', href=re.compile('????'))
我需要找到所有在href文本中有'abc123'的链接。
我需要帮助与正则表达式,请参阅?在我的代码片段。
我使用beautifuly汤来查找所有的href标签。python正则表达式来查找任何包含文本'abc123'的链接
links = myhtml.findAll('a', href=re.compile('????'))
我需要找到所有在href文本中有'abc123'的链接。
我需要帮助与正则表达式,请参阅?在我的代码片段。
如果'abc123'
是字面上你想搜索的内容,随时随地在href
,然后re.compile('abc123')
正如其他答案所建议的那样。如果你想要匹配的实际字符串包含标点符号,例如'abc123.com'
,则改用
re.compile(re.escape('abc123.com'))
所以,它的字面解释,就像字母数字是re.escape
部分将“逃离”任何标点;没有它,某些标点符号会被RE引擎以各种方式解释,例如上例中的点('.'
)将被视为“任何单个字符”,因此re.compile('abc123.com')
会与例如“ 'abc123zcom'
(和许多其他类似性质的字符串)。
"abc123"
应该给你你想要的东西
如果不工作,比BS可能使用re.match
在这种情况下,你会想".*abc123.*"
如果你想所有恰好“ABC123”链接你可以简单地说:
links = myhtml.findAll('a', href=re.compile('abc123'))
但它是href url中任何地方包含'abc123'的任何href。 – Blankman 2010-08-07 01:54:58
我已经更新了我的答案 – aaronasterling 2010-08-07 01:58:16