utf8

Hiển Thị Bản Đã Lỗi Thời

*Nội dung này được dịch bằng AI (Beta) và có thể có lỗi. Để xem trang này bằng tiếng Anh, hãy nhấp vào đây.

Thư viện này cung cấp hỗ trợ cơ bản cho UTF-8 mã hóa.Thư viện này không cung cấp bất kỳ hỗ trợ nào cho Unicode ngoài việc xử lý mã hóa.Bất kỳ hoạt động nào cần ý nghĩa của một nhân vật, như phân loại nhân vật, nằm ngoài phạm vi của nó.

Trừ khi được định nghĩa khác, tất cả các chức năng mong đợi vị trí byte là một tham số cho rằng vị trí được cho là là khởi đầu của một chuỗi byte hoặc một cộng với chiều dài của chuỗi chủ đề.Như trong thư viện chuỗi, chỉ số âm đếm từ cuối chuỗi.

Bạn có thể tìm thấy một danh mục lớn các nhân vật có thể sử dụng UTF-8 được ở đây .

Tóm Tắt

Chức Năng

Thuộc Tính

  • Mẫu "[%z\x01-\x7F\xC2-\xF4][\x80-\xBF]*", phù hợp với chính xác không có hoặc nhiều hơn chuỗi UTF-8 byte, cho rằng chủ đề là một chuỗi UTF-8 hợp lệ.

Chức Năng

char

Nhận được không có hoặc nhiều điểm mã như số thập phân, chuyển mỗi điểm mã thành chuỗi UTF-8 tương ứng và trả về một chuỗi với sự kết hợp của tất cả các chuỗi này.

Tham Số

codepoints: Tuple<number>

Lợi Nhuận

Trả về chức năng iterator để xây dựng:


for position, codepoint in utf8.codes(str) do
-- thân
end

sẽ lặp lại trên tất cả các điểm mã trong chuỗi str. Nó gây ra một lỗi nếu nó gặp bất kỳ chuỗi byte không hợp lệ nào.

Tham Số

str: string

Chuỗi để lặp qua.

codepoint

Trả lại các điểm mã (như số thập phân) từ tất cả các điểm mã trong chuỗi cung cấp (str) bắt đầu giữa vị trí byte ij (cả hai đều bao gồm).Mặc định cho i1 và cho ji .Nó gây ra một lỗi nếu nó gặp bất kỳ chuỗi byte không hợp lệ nào.

Tham Số

str: string

Chỉ mục của điểm mã phải được lấy từ chuỗi này.

Giá Trị Mặc Định: 1

Chỉ mục của điểm cuối cùng giữa ij mà sẽ được trả về. Nếu bị bỏ, giá trị này sẽ mặc định là i .

Giá Trị Mặc Định: i

Lợi Nhuận

Trả về số điểm mã UTF-8 trong chuỗi str bắt đầu giữa vị trí ij (cả hai bao gồm)Mặc định cho i1 và cho j-1.Nếu nó tìm thấy bất kỳ chuỗi byte không hợp lệ nào, trả về giá trị nil cộng với vị trí của chuỗi byte không hợp lệ đầu tiên.

Tham Số

Vị trí bắt đầu.

Giá Trị Mặc Định: 1

Vị trí kết thúc.

Giá Trị Mặc Định: -1

Lợi Nhuận

offset

Trả vị trí (bằng byte) mà việc mã hóa của điểm n - thứ mã s (bắt đầu từ vị trí byte i) bắt đầu.Một negative n nhận được các ký tự trước vị trí i .Mặc định cho i1 khi n không phải là âm và #s + 1 nếu không, để utf8.offset(s, -n) nhận được offset của nhân vật n từ cuối chuỗi.Nếu nhân vật được chỉ định không nằm trong chủ đề hoặc ngay sau khi kết thúc, chức năng trả về nil .

Tham Số

Giá Trị Mặc Định: 1

Lợi Nhuận

graphemes

Trả về chức năng iterator để


for first, last in utf8.graphemes(str) do
local grapheme = s:sub(first, last)
-- thân
end

sẽ lặp lại các cụm grapheme của chuỗi.

Tham Số

Lợi Nhuận

nfcnormalize

Chuyển chuỗi nhập thành dạng bình thường C, cố gắng chuyển các nhân tố phân tách thành các nhân tố kết hợp.

Tham Số

str: string

Lợi Nhuận

nfdnormalize

Chuyển chuỗi nhập thành dạng bình thường D, cố gắng phá vỡ các nhân vật được tạo thành thành các nhân vật được phân tách.

Tham Số

str: string

Chuỗi để chuyển đổi.

Lợi Nhuận

Thuộc Tính

charpattern

Mẫu "[%z\x01-\x7F\xC2-\xF4][\x80-\xBF]*", phù hợp với chính xác không có hoặc nhiều hơn chuỗi UTF-8 byte, cho rằng chủ đề là một chuỗi UTF-8 hợp lệ.