Pascal hỗ trợ các thao tác xử lý chuỗi đơn giản, bao gồm nối chuỗi, tìm kiếm, cắt và lấy độ dài chuỗi.
Ví dụ, để nối hai chuỗi trong Pascal, chúng ta có thể sử dụng toán tử “+” như sau:
program ConcatenateStrings;
var
str1, str2, str3: string;
begin
str1 := 'Hello';
str2 := 'World';
str3 := str1 + ' ' + str2;
writeln(str3); // In ra 'Hello World'
end.
Để tìm kiếm một chuỗi con trong chuỗi lớn hơn, chúng ta có thể sử dụng hàm Pos. Hàm Pos sẽ trả về vị trí đầu tiên của chuỗi con trong chuỗi lớn hơn, hoặc 0 nếu chuỗi con không được tìm thấy.
program FindSubstring;
var
str1, str2: string;
pos: integer;
begin
str1 := 'The quick brown fox jumps over the lazy dog';
str2 := 'fox';
pos := Pos(str2, str1);
if pos > 0 then
writeln('Found at position ', pos) // In ra 'Found at position 17'
else
writeln('Not found');
end.
Để cắt một phần của chuỗi, chúng ta có thể sử dụng hàm Copy. Hàm Copy sẽ trả về một chuỗi con của chuỗi ban đầu, bắt đầu từ vị trí đầu tiên và có độ dài xác định.
program CopyString;
var
str1, str2: string;
begin
str1 := 'The quick brown fox jumps over the lazy dog';
str2 := Copy(str1, 17, 3);
writeln(str2); // In ra 'fox'
end.
Để lấy độ dài của một chuỗi, chúng ta có thể sử dụng hàm Length.
program StringLength;
var
str: string;
len: integer;
begin
str := 'Hello World';
len := Length(str);
writeln(len); // In ra 11
end.
Ngoài ra, Pascal cũng hỗ trợ các hàm và thủ tục xử lý chuỗi phức tạp hơn, bao gồm chuẩn hóa chuỗi, thay thế chuỗi, cắt bỏ khoảng trắng và chuyển đổi kiểu dữ liệu.
Dưới đây là một số hàm xử lý chuỗi thông dụng trong Pascal:
Length(str: string): Integer: Trả về độ dài của chuỗi.Pos(subStr, str: string): Integer: Tìm vị trí đầu tiên của chuỗi consubStrtrong chuỗistr. Nếu không tìm thấy, trả về giá trị 0.Copy(str: string; index, count: Integer): string: Cắt chuỗistrbắt đầu từ vị tríindexvới độ dàicountvà trả về chuỗi kết quả.Concat(str1, str2: string): string: Nối hai chuỗistr1vàstr2và trả về chuỗi kết quả.LowerCase(str: string): string: Chuyển tất cả các ký tự trong chuỗistrthành chữ thường.UpperCase(str: string): string: Chuyển tất cả các ký tự trong chuỗistrthành chữ hoa.Trim(str: string): string: Loại bỏ khoảng trắng thừa ở đầu và cuối chuỗistr.PosEx(subStr, str: string; offset: Integer): Integer: Tìm vị trí đầu tiên của chuỗi consubStrtrong chuỗistr, bắt đầu tìm kiếm từ vị tríoffset.Delete(str: string; index, count: Integer): string: Xóacountký tự trong chuỗistrbắt đầu từ vị tríindex.Insert(subStr, str: string; index: Integer): string: Chèn chuỗi consubStrvào chuỗistrtại vị tríindex.Replace(oldSubStr, newSubStr, str: string; count: Integer): string: Thay thếcountchuỗi conoldSubStrtrong chuỗistrbằng chuỗi connewSubStr.Copy(str: string; index: Integer): string: Cắt chuỗistrbắt đầu từ vị tríindexđến hết chuỗi và trả về chuỗi kết quả.
Các hàm này giúp cho việc xử lý chuỗi trong Pascal trở nên đơn giản và dễ dàng hơn.

