In C++ Programming:Given the following header:vector split(string target, string delimiter);
Implement the function split so that it returns a vector of the strings in target that are separated by the string delimiter.For example: split("10,20,30", ",") should return a vector with the strings "10", "20", and "30".Similarly, split("do re mi fa so la ti do", " ") should return a vector with the strings "do", "re","mi", "fa", "so", "la", "ti", and "do".1. Write a program that inputs two strings and calls your function to split the first target string by the second delimiter string and prints the resulting vector all on line line with elements separated by commas.A successful program should be as below with variable inputs:Examples with inputs of :10,20,30and:do re mi fa so la ti doEnter string to split: 10,20,30 Enter delimiter string: , The substrings are: "10", "20", "30"Enter string to split: do re mi fa so la ti do Enter delimiter string: The substrings are: "do", "re", "mi", "fa", "so", "la", "ti", "do"

Respuesta :

Answer:

See explaination

Explanation:

#include <iostream>

#include <string>

#include <vector>

using namespace std;

vector<string> split(string, string);

int main()

{

vector<string> splitedStr;

string data;

string delimiter;

cout << "Enter string to split:" << endl;

getline(cin,data);

cout << "Enter delimiter string:" << endl;

getline(cin,delimiter);

splitedStr = split(data,delimiter);

cout << "\n";

cout << "The substrings are: ";

for(int i = 0; i < splitedStr.size(); i++)

cout << "\"" << splitedStr[i] << "\"" << ",";

cout << endl << endl;

cin >> data;

return 0;

}

vector<string> split(string target, string delimiter)

{

unsigned first = 0;

unsigned last;

vector<string> subStr;

while((last = target.find(delimiter, first)) != string::npos)

{

subStr.push_back(target.substr(first, last-first));

first = last + delimiter.length();

}

subStr.push_back(target.substr(first));

return subStr;

ACCESS MORE