2014-01-09 61 views
1

我知道可以使用boost escaped_list_separator拆分一個字符串並同時刪除轉義。是否有一些escaped_list_separator反向函數?

是否有類似的(優雅)的方式來實現相反的結果?像添加轉義一樣將多個字符串合併成一個?

+0

不是C++開發人員,所以我不能給它是否能滿足你的需要說話,但HTTP:// WWW。 boost.org/doc/libs/1_55_0/doc/html/string_algo/reference.html#header.boost.algorithm.string.join_hpp顯示合適嗎? –

+0

@SeanBright,謂詞只是測試輸入,而在使用'join'的過程中,我需要通過轉義特定字符來更改輸入。 – kaspersky

+0

你可以在每個項目上運行一個函數'escape()',然後''加入'它們全部? – Keeler

回答

2

我知道你想要一個班輪,但找不到任何符合你需求的東西。

隨着string escape(const string &s)功能,您可以編寫自己的一行:

#include <algorithm> 

string escape(const string &s) 
{ 
    // Do your thing. 
    return result; 
} 

string joinEscaped(const vector<string> &v, const string &delimiter) 
{ 
    std::vector<string> temp(v.size()); 
    std::transform(v.begin(), v.end(), temp.begin(), escape); 

    return boost::algorithm::join(temp, delimiter); 
} 
相關問題