Now let's match an HTML tag, matching table as follows:
<table.*?>[\s\S]*<\/table>
Or
<table.*?>[\s\S]*?<\/table>
Above two expressions, one adds "?" And one without "?", then what's the difference?
We know "?" In a regular expression is a wildcard character: matches the preceding subexpression 0 or one time, or indicates a non-greedy qualifier.
Here, passing the test, we come to the conclusion that we do not add "?" , in the case of matching the following paragraph of content:
<table> This is the first table</table>
I'm not the content in the table.
<table> This is a second table</table>.
I'm not the content in the table.
<table> This is a third table</table>.
Will match the end of the <table> start,</table>,
Add the "?" After that, only the nth matched content is matched,
PS. When using regular matching HTML tags, be careful to use a question mark to match
Use of the regular expression (question mark)