tstring1.pp 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. program TestStr;
  2. function TestOK:boolean;
  3. Const
  4. TestStr: string[22]='HELLO, THIS IS A TEST ';
  5. var
  6. I : INTEGER;
  7. U : STRING[1];
  8. Q : STRING[100];
  9. S : STRING[55];
  10. T : STRING[60];
  11. V : STRING;
  12. begin
  13. TestOk:=false;
  14. T:='THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG 1234567890';
  15. Insert (T, T, 1);
  16. {Writeln(T);}
  17. Delete (T, 55, 54);
  18. S:=Copy (T, -5, 2); {'TH'}
  19. U:=Copy (T, 7, 4); {'I'}
  20. S:=S + U; {'THI'}
  21. Q:=Copy (T, 32, 70); {'THE LAZY DOG 1234567890'}
  22. Delete (Q, 2, 1); {'TE LAZY DOG 1234567890'}
  23. Delete (Q, 100, 2); {'TE LAZY DOG 1234567890'}
  24. Delete (Q, 3, -4); {'TE LAZY DOG 1234567890'}
  25. Delete (Q, 3, 10); {'TE1234567890'}
  26. { writeln('TE1234567890 - ',Q);}
  27. I:=Pos ('S', T); {25}
  28. Insert(Copy(T,I,200),Q,3);{'TES OVER THE LAZY DOG 12345678901234567890'}
  29. Delete (Q, 4, 6); {'TESTHE LAZY DOG 12345678901234567890}
  30. S:=S + T [25]; {'THIS'}
  31. S:=S + Copy (S, 3, -5) + Copy (S, 3, 2); {'THISIS'}
  32. V:=T; {'THE QUICK BROWN FOX JUMPS OVER THE LAZY ..'}
  33. Delete (V, 1, 36); {'AZY DOG 1234567890'}
  34. if (Copy (V, -7, -1)='') and (Pos ('DOG', V)=5) then {TRUE}
  35. Insert (V, S, 200); {'THISISAZY DOG 1234567890'}
  36. U:=Copy (T, 44, 40); {' '}
  37. Insert (U, S, 5); {'THIS ISAZY DOG 1234567890'}
  38. I:=Pos ('ZY', S); {9}
  39. Delete (S, I, -5); {'THIS ISAZY DOG 1234567890'}
  40. Insert (Copy(S,5,1),S,8); {'THIS IS AZY DOG 1234567890'}
  41. Delete (S, 10, 16); {'THIS IS A0'}
  42. if S [Length (S)]='0' then {TRUE}
  43. S:=S + Q; {'THIS IS A0TESTHE LAZY DOG 123456789012345...'}
  44. V:=Copy (S, Length (S) - 19, 10); {'1234567890'}
  45. if V=Copy (S, Length (S) - 9, 10) then {TRUE}
  46. Delete (S, 15, 3 * Length (V)+2); {'THIS IS A0TEST'}
  47. Insert ('', S, 0); {'THIS IS A0TEST'}
  48. Insert(Copy(S,5,1),S,11); {'THIS IS A0 TEST'}
  49. Insert ('HELLO', S, -4); {'HELLOTHIS IS A0 TEST'}
  50. Insert (',', S, 6); {'HELLO,THIS IS A0 TEST'}
  51. Delete (S, Pos ('TEST', S) - 2, 1); {'HELLO,THIS IS A TEST'}
  52. Delete (Q, 1, 32767); {''}
  53. Q:=Q + ' '; {' '}
  54. Insert (Q, S, 7); {'HELLO, THIS IS A TEST'}
  55. Insert (Q, S, 255); {'HELLO, THIS IS A TEST '}
  56. if (S=TestStr) and (Q=' ') and (V='1234567890') and
  57. (T='THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG 1234567890') then
  58. TestOK:=true;
  59. end;
  60. begin
  61. if TestOK then
  62. WriteLn('Test OK')
  63. else
  64. begin
  65. WriteLn('Test Failure!');
  66. halt(1);
  67. end;
  68. end.