lll714775117
lll714775117
2019-07-31 11:40
浏览 288

请问下Linux下C++的正则表达式匹配全部字符的时候为什么会报错?

    regex re("<form[\\S\\s]+method=\"get\"[\\S\\s]+/form>");
    for (sregex_iterator it(html.cbegin(), html.cend(), re), end; it != end; it++, n++)
        continue;

程序是在Ubantu下编译的,html是string对象,存储的是网页源代码,网页源代码是用wget命令下载的,然后读取到html对象中,这段代码目的是为了匹配网页源代码中的get方法,用以上的正则表达式匹配www.hao123.com网页源代码时候会出现Segmentation fault错误,调试之后定位出来问题出在"[\S\s]+"这个正则表达式语句上,这个语句是为了匹配所有的字符,求解各位为什么会出现越界的问题?如果要匹配所有字符的话,C++中的正则表达式应该怎么使用呢?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

相关推荐