佚名通过本文主要向大家介绍了python 正则表达式,python正则表达式教程,python正则表达式语法,python3 正则表达式,python中正则表达式等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题:python正则表达式的匹配。
描述:
解决方案1:
描述:
如果想要匹配这样的html代码
<div>
xxxxxxxxxxx
</div>
取出其中的xxxxx的内容
我是这样做的
#raw_data为读取的html代码
pattern=re.compile(r'<div>(.*?)</div>$')
items=re.findall(pattern,raw_data)
items为空,我想知道匹配的情况错在了那里
解决方案1:
非要用正则的话,可以这样写:
r'<div>\n\s+(\S+)\s+</div>'
注:\s表示匹配空白字符,\S表示匹配非空白字符,而用+表示非贪婪匹配
解决方案2:(点符号)匹配的是除了换行符“\n”以外的所有字符
你要进行正则处理的HTML 是有换行的。
所以应该把换行情况也考虑进去(.|\n)
想了想,我还是推荐题主用xpath
去解析HTML
或xml
。
例子 http://outofmemory.cn/code-snippet/11036/python-xpath-minidom-parse-xm...
在爬虫过程中可能还会遇到更加复杂的结构,用xpath
会更加得心应手。
$,把这个去掉