Trim

Quá trình xóa khoảng trắng ở đầu và cuối chuỗi. Được cung cấp như phương thức tiêu chuẩn trong hầu hết ngôn ngữ lập trình.

Trim là quá trình xóa các ký tự khoảng trắng (dấu cách, tab, xuống dòng, v.v.) ở đầu và cuối chuỗi. Có sẵn như phương thức tiêu chuẩn trong hầu như mọi ngôn ngữ lập trình, đây là thao tác chuỗi cơ bản được sử dụng trong xác thực đầu vào người dùng, xử lý trước khi lưu cơ sở dữ liệu, tiền xử lý so sánh văn bản và vô số tình huống khác.

Triển khai trim khác nhau tinh tế giữa các ngôn ngữ. JavaScript cung cấp String.trim() cùng với trimStart()trimEnd(), được chuẩn hóa trong ES2019. Python cung cấp str.strip() cho cả hai đầu, lstrip() cho đầu và rstrip() cho cuối. Java 11 thêm strip() bên cạnh trim() truyền thống, với strip() xử lý ký tự khoảng trắng Unicode. Sự phân biệt này quan trọng trong thực tế: trim() chỉ nhắm vào khoảng trắng ASCII, trong khi strip() cũng xóa dấu cách toàn độ rộng và dấu cách không ngắt.

Trim đặc biệt quan trọng trong xử lý đầu vào biểu mẫu. Khi người dùng sao chép và dán vào trường văn bản, khoảng trắng không mong muốn thường được bao gồm. Dấu cách xung quanh địa chỉ email gây lỗi đăng nhập, dấu cách cuối trong truy vấn tìm kiếm thay đổi kết quả, và bỏ qua trim dẫn đến lỗi không mong muốn. Từ góc độ bảo mật, trim giá trị đầu vào được khuyến nghị là bước đầu tiên trong sanitization.

Một cạm bẫy phổ biến liên quan đến dấu cách toàn độ rộng (U+3000) và dấu cách không ngắt (U+00A0). trim() của JavaScript xóa dấu cách toàn độ rộng, nhưng một số ngôn ngữ hoặc thư viện thì không. Trong văn bản tiếng Nhật, dấu cách toàn độ rộng có thể là có chủ đích, vì vậy trim bừa bãi có thể mất thông tin. Khoảng trắng độ rộng không (U+200B) không bị xóa bởi hầu hết triển khai trim và yêu cầu xử lý riêng.

Về đếm ký tự, việc áp dụng trim hay không ảnh hưởng trực tiếp đến số đếm. " Hello " (có dấu cách xung quanh) là 7 ký tự, nhưng trở thành 5 sau khi trim. Công cụ đếm ký tự lý tưởng hiển thị cả "số đếm có khoảng trắng" và "số đếm không có khoảng trắng" để người dùng có thể kiểm tra số đếm phù hợp cho mục đích của họ. Khi xác minh giới hạn ký tự cho bài đăng mạng xã hội hoặc meta description, số ký tự đã trim là tham chiếu tiêu chuẩn.

Chia sẻ bài viết này