Chuyển đổi chuỗi thành chữ thường

Lua:
Chuyển đổi chuỗi thành chữ thường

Cách thực hiện:

Trong Lua, bạn có thể giảm bớt gánh nặng với string.lower(). Cho nó một chuỗi, ra là phiên bản chữ thường. Quan sát:

local originalString = "Hello, World!"
local lowerCaseString = string.lower(originalString)
print(lowerCaseString)  -- Kết quả: hello, world!

Chạy đoạn mã này. Những chữ in hoa ồn ào giờ đây đã trở thành chữ thường nhẹ nhàng.

Sâu xa hơn

Từ khi bình minh của việc tính toán, mọi người đã cần phải ép văn bản vào một trạng thái chung cho hàng loạt lý do, như sắp xếp hoặc đăng nhập không phân biệt chữ hoa chữ thường. Trong Lua, string.lower() đã là lựa chọn hàng đầu kể từ khi nó ra đời. Nó gọn gàng, nó được tích hợp sẵn, và nó làm công việc của mình một cách không lớn tiếng.

Nhưng điều gì ở bên dưới cái nắp? string.lower() lướt qua từng ký tự, và nếu nó là chữ hoa (A đến Z), nó sẽ được chuyển đổi. Lua dựa vào giá trị ASCII: từ ‘A’ (65) đến ‘Z’ (90) được nâng lên thành ‘a’ (97) đến ‘z’ (122). Sự chênh lệch? 32. Vậy, chuthuong = chuhoa + 32.

Nếu string.lower() cảm thấy quá phổ thông? Bạn có thể tự mình vượt qua các ký tự với một vòng lặp, sử dụng giá trị ASCII, hoặc so khớp mẫu với string.gsub():

local s = "Make Me Lowercase, Please"
s = s:gsub("%u", function (upper) return string.char(upper:byte() + 32) end)
print(s)  -- Kết quả: make me lowercase, please

Nhưng thực sự, tại sao bạn phải chèo mồi khi bạn đã có động cơ ngoài xa (đọc là: string.lower())?

Xem Thêm

Khám phá sâu hơn về cách thao tác chuỗi trong Lua với những nguồn tài nguyên tuyệt vời này: