当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C++ boost::algorithm::join()用法及代码示例


Boot.StringAlgorithms 库提供了许多用于字符串操作的函数。该字符串可以是 std::string、std::wstring 类型或类模板 std::basic_string 的任何实例。

升压::算法:join():

C++ boost 库中的join() 函数包含在库“boost/algorithm/string” 中。该函数用于通过在字符串之间添加分隔符将两个或多个字符串连接成一个长字符串。要连接的字符串在类似字符串向量的容器中提供。常用的容器是 std::vector<std::string>、std::list<boost::iterator_range<std::string::iterator>。

用法:

join(container, separator)

参数:

  • container:它包含所有必须连接的字符串。
  • separator:它是一个分隔连接字符串的字符串。

示例 1:下面是实现上述方法的 C++ 程序。

C++


// C++ program for the
// above approach
#include <boost/algorithm/string.hpp>
#include <iostream>
using namespace std;
using namespace boost::algorithm;
// Function to join 2 or more strings
void concatenate(vector<string>& v1)
{
    // Joining the strings with a 
    // whitespace
    string s1 = boost::algorithm::join(v1, " ");
    cout << s1 << endl;
    // Joining the strings with a '$'
    string s2 = boost::algorithm::join(v1, "$");
    cout << s2 << endl;
}
// Driver Code
int main()
{
    // Vector container to hold 
    // the input strings
    vector<string> v1;
    v1.push_back("Geeks");
    v1.push_back("For");
    v1.push_back("Geeks");
    // Function Call
    concatenate(v1);
    return 0;
}


输出
Geeks For Geeks
Geeks$For$Geeks

示例 2:下面是实现上述方法的 C++ 程序。

C++


// C++ program for the above approach
#include <iostream>
#include <boost/algorithm/string.hpp>
using namespace std;
using namespace boost::algorithm;
// Function to join 2 or more strings
void concatenate(vector<string>& v1)
{
    // Joining the strings with 
    // the string "..."
    string s1 = boost::algorithm::join(v1, "...");
    cout << s1 << endl;
}
// Driver Code
int main()
{
    // Vector container to hold the 
    // input strings
    vector<string> v1;
    v1.push_back("Geeks");
    v1.push_back("For");
    v1.push_back("Geeks");
    // Function Call
    concatenate(v1);
    return 0;
}


输出
Geeks...For...Geeks


相关用法


注:本文由纯净天空筛选整理自spp____大神的英文原创作品 boost::algorithm::join() in C++ Library。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。