Toán tử truyền đạt

Một phần của tài liệu giáo trình ngôn ngữ lập trình perl (Trang 73 - 74)

Có một cách khác để thay thế một nhóm kí tự bằng nhóm khác : toán tử tr sẽ làm điều đó :

Cú pháp tr/string1/string2/

string1 là xâu chứa danh sách các kí tự sẽ được thay thế

string2 là xâu chứa danh sách các kí tự thay thế

kí tự đầu tiên trong string1 dược thay thế bởi kí tự đầu tiên trong string2 và tiếp tục. Ví dụ $string =~ tr/abc/def/;

Các kí tự được thay thế như sau

 Tất cả các kí tự a được thay thế bởi kí tự d

 Tất cả các kí tự b được thay thế bởi kí tự e

 Tất cả các kí tự c được thay thế bởi kí tự f

$xau =~ tr/A-Z/a-z/; Chuyển đổi tất cả các chữ hoa trong xâu thành chữ thường.

Nếu xâu chứa kí tự được thay thế chứa nhiều kí tự hơn xâu thay thế, kí tự cuối cùng trong xâu thay thế được lặp lại

Kí tự d chưa có kí tự thay thế, do đó nó sẽ lấy kí tự cuối cùng trong xâu thay thế là g để thay thế nó. Có nghĩa là mọi kí tự d trong $string được thay thế bằng g

Nếu xâu chứa kí tự được thay thế có chứa nhiều kí tự giống nhau, kí tự thay thế đầu tiên được sử dụng $xau =~ tr/aba/def/; thay thế a bởi d

Với toán tử truyền đạt có 3 tuỳ chọn

 Tuỳ chọn c thay thế tất cả các kí tự mà không được chỉ định $xau =~ tr/\d/ /c;

thay thế tất cả các kí tự không phải chữ cái bằng dấu cách

 Tuỳ chọn d xoá bỏ mọi kí tự được chỉ định $string =~ tr/\t //d;

Xoá mọi khoảng trắng trong xâu

 Tuỳ chọn s kiểm tra dữ liệu ra từ truyền đạt.

Một phần của tài liệu giáo trình ngôn ngữ lập trình perl (Trang 73 - 74)