wheelsmanx

C++ string split and char split

Jan 28th, 2017
139
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.31 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3. #include <string>
  4.  
  5. using namespace std;
  6. string teststring = "This is a thiThisng here his ";
  7. vector <string> testvector;
  8. vector <string> testvector1;
  9.  
  10.  
  11. vector <string> csplit(string input, char delimter) {
  12. vector <string> v;
  13. int stringlength = input.length();
  14. string buffer;
  15. for (int i = 0; i < stringlength; i++) {
  16. if (input[i] != delimter) {
  17. buffer += input[i];
  18. }
  19. else {
  20. v.push_back(buffer);
  21. buffer = "";
  22. }
  23. }
  24. v.push_back(buffer);
  25. buffer = "";
  26.  
  27. return v;
  28. }
  29.  
  30. vector <string> cstringsplit(string input, string delimeter) {
  31. int delimSize = delimeter.length();
  32. int inputSize = input.length();
  33. string buffer;
  34. vector <string> v;
  35. for (int i = 0; i < inputSize; i++) {
  36. if (input.substr(i, delimSize) != delimeter) {
  37. buffer += input[i];
  38. }
  39. else {
  40. v.push_back(buffer);
  41. buffer = "";
  42. i = i + delimSize - 1;
  43.  
  44. }
  45.  
  46.  
  47. }
  48. v.push_back(buffer);
  49. buffer = "";
  50. return v;
  51. }
  52.  
  53.  
  54. void main() {
  55. /*testvector = csplit(teststring, ' ');
  56. for (int i = 0; i < testvector.size(); i++) {
  57.  
  58. cout << testvector.at(i) <<endl;
  59. }
  60. */
  61.  
  62. cout << endl;
  63. testvector1 = cstringsplit(teststring, "This");
  64. for (int i = 0; i < testvector1.size(); i++) {
  65.  
  66. cout << testvector1.at(i) << endl;
  67. }
  68.  
  69.  
  70. system("pause");
  71. }
Advertisement
Add Comment
Please, Sign In to add comment