f_oa_workremind_splitstr.srf 794 B

123456789101112131415161718192021222324252627282930313233
  1. $PBExportHeader$f_oa_workremind_splitstr.srf
  2. global type f_oa_workremind_splitstr from function_object
  3. end type
  4. forward prototypes
  5. global subroutine f_oa_workremind_splitstr (string target, string splitflag, ref string result[])
  6. end prototypes
  7. global subroutine f_oa_workremind_splitstr (string target, string splitflag, ref string result[]);Long cnt
  8. String ls_object
  9. Long ll_start,ll_next
  10. ll_start = 1
  11. cnt = 1
  12. target = target+splitflag
  13. ll_next = Pos(target,splitflag)
  14. DO WHILE ll_next <> 0
  15. If (ll_next - ll_start) > 0 THEN
  16. ls_object = Mid(target,ll_start,ll_next - ll_start)
  17. ll_start = ll_next + 1
  18. ll_next = Pos(target,splitflag,ll_start)
  19. result[cnt] = ls_object
  20. cnt++
  21. ELSE
  22. ll_start = ll_next + 1
  23. ll_next = Pos(target,splitflag,ll_start)
  24. END IF
  25. LOOP
  26. end subroutine