Tôi đang cố gắng để đánh giá chiến lược khác nhau đối với trường hợp không nhạy cảm UTF-8 chuỗi so sánh.Trường hợp gấp UTF-8 mà không biết ngôn ngữ
Tôi đã đọc một số tài liệu từ tổ hợp Unicode, thử nghiệm với ICU và cố gắng đưa ra các lựa chọn thay thế chất lượng khác nhau.
Trong nhiều trường hợp, tôi đã thấy các văn bản khác nhau giữa Bản đồ trường hợp đơn giản và Bản đồ trường hợp đầy đủ và tôi muốn đảm bảo rằng tôi hiểu sự khác biệt hoàn toàn.
Khi tôi đọc nó, ánh xạ trường hợp đơn giản là "không có ngữ cảnh", tức là không cần biết tải trọng của ngôn ngữ là gì. Điều này sẽ cho kết quả gần đúng, do sự thất bại "I/ı/İ/i" của Turkic.
Full Trường hợp bản đồ, mặt khác, cần phải biết ngôn ngữ của tải trọng để có thể thực hiện việc lập bản đồ. Với thông tin bổ sung đó, có thể thực hiện các biện pháp đặc biệt để bao gồm các trường hợp "Kim" như một chuỗi Turkic sẽ trở thành "KİM" trong chữ hoa, nhưng "Kim" là chuỗi tiếng Anh, sẽ trở thành "KIM" trong chữ hoa.
Có tôi mà phải không?
Có ví dụ khác về điểm mã "nhiều mặt" mà gấp khác nhau cho các ngôn ngữ khác nhau?
Cảm ơn!
UPDATE: Một trong những nguồn nhắc đến bản đồ trường hợp đơn giản như là ngôn ngữ độc lập là ICU's documentation. Tôi giải thích rằng đó là sự thật Unicode, nhưng có lẽ nó chỉ là một tuyên bố của việc thực hiện?
Vì vậy, cả hai đều cần bối cảnh ngôn ngữ, phải không? Tôi sử dụng một thư viện bên thứ ba (PCRE) mà không sử dụng CaseFolding.txt, nhưng chỉ có thông tin trường hợp từ UnicodeData.txt, và không yêu cầu ngữ cảnh ngôn ngữ (không rõ ràng và ngầm, theo như tôi có thể nói). Tôi nghĩ có lẽ đó là một thỏa hiệp hợp lệ trong trường hợp đơn giản. –
Tuyệt đối. Như đã lưu ý trong tệp, bạn sẽ cần phải biết khi nào bỏ qua các bản ghi với mã trạng thái "T". –
Theo như tôi thấy, mã trạng thái T xuất hiện trong CaseFolding.txt và không phải UnicodeData.txt. Nhưng bạn có thực sự nói rằng _correct_ folding chỉ có thể được thực hiện với kiến thức về ngữ cảnh ngôn ngữ? Tôi đang tìm kiếm một thỏa hiệp không đòi hỏi bối cảnh, và không hoàn hảo 100% ... Nhưng có lẽ đó là bước đầu tiên trên con đường đến sự ấm áp? –