例如,这是我的字符串:
myString = "<html><body><p>Hello World!</p><p>Hello Dennis!</p></body></html>"
我想要达到的是:
myList = ['Hello World!','Hello Dennis!']
使用正则表达式或其他方法,如何从myString
中过滤出段落文本,同时忽略html标记以实现myList
?你知道吗
我试过:
import re
a="<body><p>Hello world!</p><p>Hello Denniss!</p></body>"
result=re.search('<p>(.*)</p>', a)
print result.group(1)
结果是:Hello world!</p><p>Hello Denniss!
当我尝试(.*)(.*)
时,我得到了Hello World!
这个字符串只是一个例子。字符串也可能是<garbage>abcdefghijk<gar<bage>
,这取决于web开发人员如何对网站进行编码。你知道吗
这可能是一个复杂的正则表达式,但我需要学习这一点,因为这是我今年晚些时候将参加的一个网络安全竞赛,我认为我的最佳选择是开发一个算法,搜索a >
和a <
之间的文本。你知道吗
我该怎么办?你知道吗
抱歉,如果我的问题格式不正确,我有一点学习问题。你知道吗
使用regex解析HTML肯定是limited,但是如果您想获得真正的HTML挖掘解决方案,请尝试查看这个插件BeautifulSoup。你知道吗
至于regex,
asterisk
量词是贪心的,它会一直吃到</p>
的最后一个。所以,您应该使用(?=XXX)
命令,这意味着搜索直到XXX找到。你知道吗请尝试以下操作: 你知道吗
是否要删除
html
文本中的所有标记?我不会选择正则表达式,最好选择另一种方法,例如使用BeautifulSoup
,你会在那次黑客会议上大吃一惊:它产生:
相关问题 更多 >
编程相关推荐