demojsstring.pas 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. {$codepage UTF8}
  2. uses types,JS;
  3. Var
  4. S,C,R : TJSString;
  5. t : TStringDynArray;
  6. i : integer;
  7. Q : String;
  8. begin
  9. S:=TJSString.New('memamomu');
  10. C:=TJSString.New('你好!');
  11. R:=TJSString.New('привет!');
  12. writeln(s,' -> upper: ',s.toUpperCase);
  13. Writeln(s,' -> lower: ',s.toLowerCase);
  14. Writeln(s,' -> startsWith(''me''): ',s.startsWith('me'));
  15. Writeln(s,' -> startsWith(''ma''): ',s.startsWith('ma'));
  16. For I:=0 to s.length-1 do
  17. Writeln('S[',I,']: ',s.charAt(i),
  18. ', Charcode S[',I,']: ',s.charCodeAt(i),
  19. ', codePoint S[',I,']: ',s.codePointAt(i));
  20. For I:=0 to C.length-1 do
  21. Writeln('C[',I,']: ',C.charAt(i),
  22. ', Charcode C[',I,']: ',C.charCodeAt(i),
  23. ', codePoint C[',I,']: ',C.codePointAt(i));
  24. For I:=0 to R.length-1 do
  25. Writeln('R[',I,']: ',R.charAt(i),
  26. ', Charcode R[',I,']: ',R.charCodeAt(i),
  27. ', codePoint R[',I,']: ',R.codePointAt(i));
  28. Writeln(R,' -> indexOf(''вет''): ',R.indexOf('вет'));
  29. Writeln(C,' -> indexOf(''вет''): ',c.indexOf('вет'));
  30. Writeln(S,' -> lastIndexOf(''m''): ',S.lastIndexOf('m'));
  31. Writeln(S,' -> link(''freepascal.org''): ',S.link('freepascal.org'));
  32. t:=S.Split('m');
  33. writeln(s,' -> split length: ',length(t),', elements:');
  34. for i:=0 to length(t)-1 do
  35. writeln(i,' : ',t[i]);
  36. Writeln(s,' -> substr(6): ',s.substr(6));
  37. Writeln(s,' -> substr(5,2): ',s.substr(5,2));
  38. Q:='abcde';
  39. writeln(Q,', typecast to TJSString, uppercase: ',TJSString(Q).toUpperCase);
  40. t:=S.match(TJSRegexp.new('m.','g'));
  41. writeln(s,' -> match(/m./g): ',length(t),', elements:');
  42. for i:=0 to length(t)-1 do
  43. writeln(i,' : ',t[i]);
  44. Writeln(S,' -> replace(/m(.)/g/,''n$1''): ',S.replace(TJSRegexp.new('m(.)','g'),'n$1f'));
  45. end.