正则表达式匹配两个字符串A与B中间的字符串且不包含A与B:
表达式: (?<=A).*(?=B)
Qt5提供QRegularExpression类,相比于QRegExp类更加全面,修复了很多bug,提高了效率,提供了对Perl的RegEx几乎全面兼容的引擎。
QRegExp不支持(?<=A)断言,QRegularExpression支持。
QString str = "[abcdefg]";
QRegularExpression re("(?<=\\[).*(?=])");
QRegularExpressionMatch match = re.match(str);
if(match.hasMatch())
qDebug()<<match.captured();
//输出abcdefg