1
我是新來的正則表達式,我試圖使用QRegExp中的lookahead斷言功能來檢查字符串的長度。這是一個很簡單的例子:展望未來在QRegExp中工作嗎?
int main(int argc, char* argv[])
{
QRegExp regexp("(?=^.{0,5}$)[0-9]*");
qDebug() << "result:" << regexp.exactMatch("12345");
return 1;
}
它打印: 「結果:假」。
我測試了這個正則表達式和這個網頁上的字符串:http://regexpal.com/,它顯示匹配。
有什麼想法?提前致謝。
提供更多信息 – NAZIK 2013-02-13 09:03:21
我的RegExp知識是該死的糟糕,但我注意到在文檔中有2個與「貪婪量詞」相關的RegExp模式語法版本。您的測試是否適用於此?文檔:http://qt-project.org/doc/qt-4.8/qregexp.html#greedy-quantifiers – cmannett85 2013-02-13 13:29:03
你的正則表達式很好,但是一些正則表達式引擎不能用於可變長度的lookaround斷言。 QRegExp可能就是其中之一。 – 2013-02-24 10:25:06