en.javascript.info/9-regular-expressions/10-regexp-greedy-and-lazy/3-find-html-comments/solution.md
Ilya Kantor f21cb0a2f4 WIP
2019-09-04 15:44:48 +03:00

17 lines
571 B
Markdown

We need to find the beginning of the comment `match:<!--`, then everything till the end of `match:-->`.
The first idea could be `pattern:<!--.*?-->` -- the lazy quantifier makes the dot stop right before `match:-->`.
But a dot in JavaScript means "any symbol except the newline". So multiline comments won't be found.
We can use `pattern:[\s\S]` instead of the dot to match "anything":
```js run
let reg = /<!--[\s\S]*?-->/g;
let str = `... <!-- My -- comment
test --> .. <!----> ..
`;
alert( str.match(reg) ); // '<!-- My -- comment \n test -->', '<!---->'
```