这一段是这样的,我不大清楚c++里哪些字符前面需要加转义符,所以感觉可能是这段正则本身错了,请教一下各位。
const regex commonPattern("(((<(!|/)?\\w+( ((.|\\n)*?\"\")?)? *>)\\W*(\\w+)\\W*((<(!|/)?\\w+( ((.|\\n)*?\"\")?)? *>)|((<(!|/)?\\w+( ((.|\\n)*?\"\")?)? *>))");
你起码要说说你的正则是干嘛的。
给你一个建议,就是加上一个中间变量,输出下,这样可以看到C++转义之后的正则。
(.|\n) 这里的这个点在正则表达式里有特殊意义,如果你表示普通字符的话需要转义。
http://baike.baidu.com/link?url=sjpcs6QJUncsGNdcZkxmoxrUfNLcELZPntKo3PgWwT6btWQ60l2huq0EIpZU7VmboclnU2CzqIgZBzTcxXLOSa
根据你粘贴的正则表达式报错应该是分组没有结束,就是后面少了三个小括号)