search

Home  >  Q&A  >  body text

用Python匹配HTML tag的时候,<.*>和<.*?>有什么区别?

用Python匹配HTML tag的时候,<.*>和<.*?>有什么区别?

高洛峰高洛峰2925 days ago819

reply all(2)I'll reply

  • 欧阳克

    欧阳克2016-11-11 10:48:33

    ?在一般正则表达式里的语法是指得"零次或一次匹配左边的字符或表达式"相当于{0,1}

    而当?后缀于*,+,?,{n},{n,},{n,m}之后,则代表非贪心匹配模式,也就是说,尽可能少的匹配左边的字符或表达式,这里是尽可能少的匹配.(任意字符)


    reply
    0
  • 三叔

    三叔2016-11-11 10:48:22

    第一种写法是,尽可能多的匹配,就是匹配到的字符串尽量长,第二中写法是尽可能少的匹配,就是匹配到的字符串尽量短。
    比如tag>tag>end,第一个会匹配tag>tag>,第二个会匹配,如果要匹配到二个 >,就只能自己写了

    reply
    0
  • Cancelreply