Regex Non-Greedy (Lazy)

后端 未结 3 977
醉酒成梦
醉酒成梦 2020-12-03 17:07

I\'m attempting to non-greedily parse out TD tags. I\'m starting with something like this:

stuffMore stuff

        
相关标签:
3条回答
  • 2020-12-03 17:26

    The regex you want is <TD[^>]*>:

    <     # Match opening tag
    TD    # Followed by TD
    [^>]* # Followed by anything not a > (zero or more)
    >     # Closing tag
    

    Note: . matches anything (including whitespace) so [.\s]*? is redundant and wrong as [.] matches a literal . so use .*?.

    0 讨论(0)
  • 2020-12-03 17:26

    For non greedy match, try this <TD.*?>

    0 讨论(0)
  • 2020-12-03 17:37

    From https://regex101.com/

    • * Quantifier — Matches between zero and unlimited times, as many times as possible, giving back as needed (greedy)
    • *? Quantifier — Matches between zero and unlimited times, as few times as possible, expanding as needed (lazy)
    0 讨论(0)
提交回复
热议问题