home *** CD-ROM | disk | FTP | other *** search
/ Phoenix CD 2.0 / Phoenix_CD.cdr / 01e / let12.zip / DEMO-5.BAT < prev    next >
DOS Batch File  |  1987-09-17  |  2KB  |  50 lines

  1. echo Off
  2. If `%Name%' == `' Demo
  3. cls
  4. echo   ╔════════════════════════════════════════════════════════════════╗
  5. echo ┌─╫────────────────────────────────────────────────────────────────╫─┐
  6. echo │ ║   String Manipulation (part 2): LENGTH, SUBSTR, POS            ║ │
  7. echo └─╫────────────────────────────────────────────────────────────────╫─┘
  8. echo   ╚════════════════════════════════════════════════════════════════╝
  9. echo  
  10. let P=(ask (concat "Give me a number between 1 and " (minus (length str) 9) ": " ))
  11. if `%P%' == `' then LET P=(minus (length Str) 10)
  12. let S=(substr Str P 10)
  13. echo The ten characters of your string, starting from position %P% are
  14. echo "%S%"
  15. LET P=(pos (lower Str) "e")
  16. LET P2=(pos (lower Str) "e" (+ P 1))
  17. if not %p% == 0 goto OneP
  18. echo Um, I had hoped to find a letter E somewhere in your string,
  19. echo just to show you I could do it, but there just doesn't seem to
  20. echo be any in it.  May I entice you to go back and enter another
  21. LET answer=(substr (upper (ask "string? ")) 1 1)
  22. if `%Answer%' == `N' goto NoGo
  23. if not `%Answer%' == 'Y' echo I'll just assume that to mean Yes, %Name%.
  24. Echo I knew I could prevail upon your sensibilities.  Thank you.
  25. DEMO-4 AskAgain
  26. :NoGo
  27. Echo Very Well, %Name%, if you insist.  I'll have to skip the next
  28. Echo demonstration, though.
  29. goto EndPos
  30. :OneP
  31. LET Ptr=(concat (dup " " (- P 1)) "^ Here in position " P)
  32. echo I found a letter E in the string.
  33. echo %Str%
  34. echo %Ptr%
  35. if not %P2% == 0 goto TwoPs
  36. echo That also happens to be the only letter E in this string.
  37. goto EndPos
  38. :TwoPs
  39. LET Ptr=(concat (dup " " (- P2 1)) "^")
  40. echo There is another in position %P2%, here:
  41. echo %Str%
  42. echo %Ptr%
  43. :EndPos
  44. LET Answer=(ask (concat "Well, " Name ", are we having fun yet? ") 1)
  45. echo (Never mind--rhetorical question)
  46. set P2=
  47. set ptr=
  48. pause
  49. DEMO-6
  50.