我担心,这非常简单,但我无法让它发挥作用(而且我无法通过搜索找到答案)。我正在为所有斜体字搜索网站(我想要的是两个单词的组 - 它们是二项式科学名称),但我不希望返回任何数字。
我使用的正则表达式:<i>(.+?)</i>
效果很好,但它拉动了数字。我认为使用\D
会起作用,但事实并非如此。我究竟做错了什么?
是的,我基本上想从标签内的任何字符串中删除整数。
Pythonre.findall
循环遍历你的匹配替换数字字符应该适合你。
pattern = re.compile(r'(?<=<i>).*?(?=</i>)')
for names in re.findall(pattern, htmltext):
print re.sub(r'[0-9]', '', names)
要查找不包含数字的匹配项:
matches = re.findall(r'(?<=<i>)[^0-9]*(?=</i>)', htmltext)
print matches
我认为它有效。你可以这样试试。+^[0-9]