Advertisement
Guest User

Untitled

a guest
Jul 16th, 2019
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.91 KB | None | 0 0
  1. namespace StringUtils {
  2. std::string sub_string(char* str, int start, int end) {
  3. int str_len = sizeof(str) / sizeof(char);
  4.  
  5. if ((end - start) > str_len) {
  6. return "";
  7. }
  8.  
  9. std::string out;
  10.  
  11. for (int i = start; i < end; i++) {
  12. out += str[i];
  13. }
  14.  
  15. return out;
  16. }
  17.  
  18. std::vector<std::string>* str_tok(std::string str, std::string delimiter) {
  19. int str_len = str.length();
  20. int del_len = delimiter.length();
  21.  
  22. if (del_len > str_len) {
  23. return nullptr;
  24. }
  25.  
  26. std::vector<std::string>* strings = new std::vector<std::string>();
  27.  
  28. char* char_arr = new char[str_len];
  29. char_arr = (char*)str.c_str();
  30.  
  31. std::string temp_str = "";
  32.  
  33. for (int i = 0; i < str_len; i++) {
  34. if (sub_string(char_arr, i, i + del_len) == delimiter) {
  35. strings->push_back(temp_str);
  36. temp_str = "";
  37. }
  38. else {
  39. temp_str += char_arr[i];
  40. }
  41. }
  42.  
  43. if (temp_str != "") {
  44. strings->push_back(temp_str);
  45. }
  46.  
  47. return strings;
  48. }
  49. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement