2012-09-03 26 views

回答

0

我沒有使用特別的boost ::正則表達式,但你問的正則表達式是直線前進。通過升壓::正則表達式的文檔來看,它看起來像你會做一些與此類似:

boost::regex e("repetitions:\\s+\\d\\s+[a-zA-Z]+"); 

(雙斜槓是這樣的轉義序列不是由編譯器吞噬)

注意: 如果你還試圖驗證第一號匹配字母「A」的數量,不會只用正則表達式工作。正則表達式只匹配字符,沒有任何線索,因此'5'和'3'沒有任何數字的方式。看看他們的文檔Captures。你會想要得到的數字作爲一個字符串,它lexical_cast爲整數,並用它來驗證aaaaa部分。

+0

在您的正則表達式將匹配像「重複:3 rrrr分」的東西,我不認爲OP意味着 – Dani

+0

我想同樣的事情。我在這方面增加了一個說明。 – Ari

+0

對不起,我原來的帖子並不清楚。正如你所說的那樣,我試圖驗證第一個數字與字母'a'的數字相匹配。感謝您的建議,我沒有考慮過提取數字,將其轉換爲字符串,然後生成一個新的正則表達式。然而,糟糕的是,這並不是一個更直接的方式。 – Kvothe