用Python匹配HTML tag的时候,<.*>和<.*?>有什么区别?
Python
<.*>和<.*?>
就是贪婪模式和非贪婪模式的区别,写爬虫和页面解析常用到。
第一种写法是,尽可能多的匹配,就是匹配到的字符串尽量长,第二中写法是尽可能少的匹配,就是匹配到的字符串尽量短。比如<tag>tag>tag>end,第一个会匹配<tag>tag>tag>,第二个会匹配<tag>,如果要匹配到二个 >,就只能自己写了
<tag>tag>tag>end
<tag>tag>tag>
<tag>