3
我使用C++ 11(窗口7 64位,視覺工作室2012)regex_replace問題
我使用一個循環來替換由另一個一些子串。 我有一個文件,有一個雙斜槓(/)分隔的數字。 例如:
10//20//1 3//4//5 5//2//1 to 10 20 1 3 4 5 5 2 1
然而,當我試圖用正則表達式做到這一點,似乎是我做錯了什麼。什麼都沒發生。另外,我在哪裏可以閱讀更多關於正則表達式C++ 11
string fData(data.substr(2));
string replaceStr("10//20//1 3//4//5 5//2//1");
regex r("//"
regex_replace(fData,r," ");
但沒有任何反應。
就像我之前說的,如果你還可以指出一個網頁,我可以閱讀更多關於這個,除了答案。我有它的工作,但我想開始使用正則表達式。
感謝
在性能方面。使用regex_replace是否與循環和替換find和replace一樣? – Blues76 2013-02-08 20:13:17
'regex_replace'好像在引擎蓋下面使用了一個正則表達式迭代器(不要拿我的話)。從我從其他答案和互聯網上看到的,與其他語言的正則表達式實現(例如Python)相比,C++ 11'regex_replace'相當慢。您可以自己進行基準測試,以查看哪個版本適合您的性能需求。 – 2013-02-09 20:10:48
感謝您的幫助! – Blues76 2013-02-10 17:12:25