Guest User

Untitled

a guest
Apr 16th, 2018
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.29 KB | None | 0 0
  1. function getSplitStrs(str, subStrs){
  2. let splitStrs = [];
  3.  
  4. function getFirstSplitStr(str, subStrs){
  5. let firstIndex = Infinity;
  6. let firstStr = ""
  7.  
  8. for (let subStr of subStrs){
  9. let index = str.indexOf(subStr)
  10. if (index >= 0 && index < firstIndex){
  11. firstIndex = index
  12. firstStr = subStr
  13. }
  14. }
  15.  
  16. if (firstIndex >= 0){
  17. let childStr = str.substring(0, firstIndex)
  18. if (childStr.length > 0){
  19. splitStrs.push({
  20. type: 0,
  21. str: childStr
  22. })
  23. }
  24. childStr = str.substring(firstIndex, firstIndex + firstStr.length)
  25. if (childStr.length > 0) {
  26. splitStrs.push({
  27. type: 1,
  28. str: childStr
  29. })
  30. }
  31. }
  32.  
  33. str = str.substring(firstIndex + firstStr.length)
  34.  
  35. if (str.length !== 0 && firstIndex !== -1) {
  36. getFirstSplitStr(str, subStrs)
  37. }
  38. }
  39.  
  40. getFirstSplitStr(str, subStrs)
  41.  
  42. return splitStrs
  43. }
  44.  
  45. // Example
  46. // var str = "中华人民共和国浙江省三门县海游镇"
  47. // var subStrs = ["人民", "浙江", "三门", "镇"]
  48. // var splitStrs = getSplitStrs(str, subStrs)
Add Comment
Please, Sign In to add comment