如何忽略正则表达式中的换行符(C ++)

时间:2015-03-18 22:06:36

标签: c++ regex

如何忽略正则表达式(C ++)中的换行符。

PHP有一个修饰符" s" (单行):

$regex = "/<html>(.*)<\/html>/s";

如果设置了此修饰符,则模式中的点元字符将匹配所有字符,包括换行符。没有它,排除了换行符。

例如:https://regex101.com/r/jA4tT4/1

如何使它成为C ++?

1 个答案:

答案 0 :(得分:1)

您可以使用[\s\S]*来制作技巧。这将捕捉从你想要的东西到你想要的一切。

所以,你可以有这样的正则表达式:

<html>([\s\S]*)<\/html>    // greedy
<html>([\s\S]*?)<\/html>   // ungreedy

您还可以使用所需的任何快捷方式,例如[\d\D][\w\W]

顺便说一下,如果你正在解析html,我会使用html解析器

相关问题