簡體   English   中英

Boost :: regex_match沒有觸發

[英]Boost::regex_match isn't firing

我有一些Boost Regex代碼,我認為應該觸發。 我是新手,但我對Regex有所了解。 這是我正在使用的代碼。

re = boost::basic_regex<TCHAR>(_T("-+\\s+Original\\s+Message\\s+-+"), boost::regex_constants::icase);
boost::match_results<TSTRING::const_iterator> result;
if(boost::regex_match(RawBody, result, re))

這是我正在使用的測試字符串。

this is a test

-------- Original Message --------

everything under here should disappear

我的代碼可以編譯並運行,只是不會觸發if語句。 我嘗試調試升壓代碼,然后...是的...

regex_match

regex_match算法確定給定的正則表達式是否與一對雙向迭代器表示的所有給定字符序列匹配 ,算法定義如下,該函數的主要用途是數據輸入驗證。

regex_search

算法regex_search 將搜索由一對雙向迭代器表示的范圍,以獲取給定的正則表達式。 該算法使用各種試探法,通過僅檢查匹配是否可以在該位置開始進行搜索來減少搜索時間。 該算法定義如下:

因此,請使用boost::regex_search 例。

http://liveworkspace.org/code/fa35778995c4bd1e191c785671ab94b6

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM