PlayerUtils.h 610 B

123456789101112131415161718192021222324252627282930313233343536
  1. #ifndef __PLAYER_UTILS_H_
  2. #define __PLAYER_UTILS_H_
  3. #include "PlayerMacros.h"
  4. #include <string>
  5. #include <vector>
  6. using namespace std;
  7. PLAYER_NS_BEGIN
  8. template<class T>
  9. vector<T> splitString(T str, T pattern)
  10. {
  11. vector<T> result;
  12. str += pattern;
  13. size_t size = str.size();
  14. for (size_t i = 0; i < size; i++)
  15. {
  16. size_t pos = str.find(pattern, i);
  17. if (pos < size)
  18. {
  19. T s = str.substr(i, pos - i);
  20. result.push_back(s);
  21. i = pos + pattern.size() - 1;
  22. }
  23. }
  24. return result;
  25. };
  26. PLAYER_NS_END
  27. #endif // __PLAYER_UTILS_H_