boost-regex

    2熱度

    3回答

    我想知道是否可以調用子程序,但不捕獲該調用的結果。 舉例來說,假設我想遞歸匹配和捕獲平衡括號{}結構像 {dfsdf {sdfdf {{dfsdf}}} dfsf} 我可以使用這正則表達式: (^(?'nest'\{(?>[^{}]|(?&nest))*\})) 第一組是我想要捕獲。 但是我的 '鳥巢' 的定義: (?'nest' ...) 和我的 '鳥巢' 子程序遞歸調用: (?&nes

    1熱度

    1回答

    所以我有許多不同文本文件中的電子郵件,並且我需要從所述文件中提取它們,這些文件在佈局上不一致。我正在使用Boost::Regex和Boost::File-system嘗試讀取它們,然後提取電子郵件地址。然而,它似乎沒有在尋找或拉出電子郵件。它可以匹配簡單的單詞,如email或字母a。但是實際讀出文件似乎有問題。 一個最小的例子如下(不包括): #include <fstream> #includ

    0熱度

    1回答

    我在C++中使用boost正則表達式解析文本文件。我正在尋找文件中的'\'字符。這個文件還包含一些Unicode字符「\ u」。那麼,有沒有辦法將'\'和'\ u'字符分開。 下面是我解析 "ID": "\u01FE234DA - this is id ", "speed": "96\/78", "avg": "\u01FE234DA avg\83" 繼test.txt的內容是我嘗試 #i

    2熱度

    1回答

    我正在使用下面的代碼嘗試使用正則表達式匹配符號(例如,我試圖匹配圓形星符號,http://graphemica.com/%E2%9C%AA ) #include <boost/regex.hpp> //... std::wstring text = L"a✪c"; auto re = L"(\\p{S}|\\p{L})+?"; boost::wregex r(re); boost::r

    0熱度

    2回答

    我想用boost::regex一堆的格式19991231235959日期的格式更改爲這種格式1999-12-31_23:59:59這樣的: YYYYMMDDhhmmss --> YYYY-MM-DD_hh:mm:ss 19991231235959 --> 1999-12-31_23:59:59 我用這個 std::string input = "19991231235959"; boost

    1熱度

    1回答

    我必須編寫一個C++正則表達式,但是我不能在regex_match上得到正確的結果,因爲我是C++新手。 用於測試的字符串是:D10A7; 可以說unsigned_char[] stringToBeTested="D10A7"; 我要做的是在regex_match之後,我將在兩個不同的short變量中提取10和7以供應用程序使用。 'D'後的數字總是兩位數字,'A'後的數字總是 是一位數字。 我嘗

    1熱度

    1回答

    我正在捕獲boost :: circular_buffer中的數據,並且想要現在對內容執行正則表達式搜索,但我在獲取boost :: regex以瞭解如何查看緩衝區方面遇到了一些困難。 這裏的之類的事情的一個精簡版,我想基於示例here做: // Set up a pre-populated data buffer as an example std::string test = "Fl

    8熱度

    1回答

    我想匹配一些數據流中有趣的數據塊。 應該有一個領先的<,然後是四個字母數字字符,兩個校驗和(或??,如果沒有指定shecksum)和一個尾隨>。 如果最後兩個字符是字母數字,則以下代碼按預期工作。如果他們是??雖然它失敗了。 // Set up a pre-populated data buffer as an example std::string haystack = "Fli<data??

    3熱度

    2回答

    string emailBody = " holla holla testing is for NewFinancial History:\"xyz\" dsd NewFinancial History:\"abc\" NewEBTDI$:\"abc\" dsds "; emailBody = string.Join(" ", Regex.Split(emailBody.Trim(),

    0熱度

    1回答

    #include <iostream> #include <regex> int main(void) { std::cmatch cm; std::regex_match("subject", cm, std::regex("(sub)(.*)")); //std::for_each(cm.begin(), cm.end(), [](const std::su