Chuyển mã văn bản đầu vào từ mã hóa nguồn sang mã hóa đích.
Đầu vào là một tensor chuỗi có hình dạng bất kỳ. Đầu ra là một tensor chuỗi có cùng hình dạng chứa các chuỗi được chuyển mã. Chuỗi đầu ra luôn là unicode hợp lệ. Nếu đầu vào chứa các vị trí mã hóa không hợp lệ, thuộc tính `errors` sẽ đặt chính sách về cách xử lý chúng. Nếu chính sách xử lý lỗi mặc định được sử dụng, định dạng không hợp lệ sẽ được thay thế trong đầu ra bằng `replacement_char`. Nếu chính sách lỗi là `bỏ qua` thì mọi vị trí mã hóa không hợp lệ trong đầu vào sẽ bị bỏ qua và không được đưa vào đầu ra. Nếu nó được đặt thành `strict` thì mọi định dạng không hợp lệ sẽ dẫn đến lỗi InvalidArgument.
Thao tác này có thể được sử dụng với `output_encoding = input_encoding` để thực thi định dạng chính xác cho đầu vào ngay cả khi chúng đã ở dạng mã hóa mong muốn.
Nếu đầu vào có tiền tố là Dấu thứ tự byte cần thiết để xác định mã hóa (ví dụ: nếu mã hóa là UTF-16 và BOM biểu thị big-endian), thì BOM đó sẽ được sử dụng và không được phát ra đầu ra. Nếu mã hóa đầu vào được đánh dấu bằng độ cuối rõ ràng (ví dụ: UTF-16-BE), thì BOM được hiểu là dấu cách không ngắt và được giữ nguyên ở đầu ra (bao gồm luôn dành cho UTF-8).
Kết quả cuối cùng là nếu đầu vào được đánh dấu là độ cuối rõ ràng thì việc chuyển mã sẽ trung thực với tất cả các điểm mã trong nguồn. Nếu nó không được đánh dấu bằng độ cuối rõ ràng thì BOM không được coi là một phần của chuỗi mà là siêu dữ liệu và do đó không được giữ nguyên trong đầu ra.
Ví dụ:
>>> tf.strings.unicode_transcode(["Xin chào", "TensorFlow", "2.x"], "UTF-8", "UTF-16-BE")
Các lớp lồng nhau
lớp học | UnicodeTranscode.Options | Thuộc tính tùy chọn cho UnicodeTranscode |
Hằng số
Sợi dây | OP_NAME | Tên của op này, được biết đến bởi công cụ lõi TensorFlow |
Phương pháp công khai
Đầu ra < TString > | asOutput () Trả về tay cầm tượng trưng của tensor. |
Chuyển mã Unicode tĩnh | |
UnicodeTranscode.Options tĩnh | lỗi (Lỗi chuỗi) |
Đầu ra < TString > | đầu ra () Một tensor chuỗi chứa văn bản unicode được mã hóa bằng `output_encoding`. |
UnicodeTranscode.Options tĩnh | thay thếControlCharacters (Boolean thay thếControlCharacters) |
UnicodeTranscode.Options tĩnh | thay thếChar (Char thay thế dài) |
Phương pháp kế thừa
Hằng số
Chuỗi cuối cùng tĩnh công khai OP_NAME
Tên của op này, được biết đến bởi công cụ lõi TensorFlow
Phương pháp công khai
Đầu ra công khai < TString > asOutput ()
Trả về tay cầm tượng trưng của tensor.
Đầu vào của các hoạt động TensorFlow là đầu ra của một hoạt động TensorFlow khác. Phương pháp này được sử dụng để thu được một thẻ điều khiển mang tính biểu tượng đại diện cho việc tính toán đầu vào.
Tạo UnicodeTranscode tĩnh công khai ( Phạm vi phạm vi, đầu vào Toán hạng < TString >, Mã hóa đầu vào chuỗi, Mã hóa đầu ra chuỗi, Tùy chọn... tùy chọn)
Phương thức gốc để tạo một lớp bao bọc một thao tác UnicodeTranscode mới.
Thông số
phạm vi | phạm vi hiện tại |
---|---|
đầu vào | Văn bản cần xử lý. Có thể có bất kỳ hình dạng. |
mã hóa đầu vào | Mã hóa văn bản của chuỗi đầu vào. Đây là bất kỳ mã hóa nào được hỗ trợ bởi bộ chuyển đổi thuật toán ucnv của ICU. Ví dụ: `"UTF-16", "US ASCII", "UTF-8"`. |
mã hóa đầu ra | Mã hóa unicode để sử dụng ở đầu ra. Phải là một trong `"UTF-8", "UTF-16-BE", "UTF-32-BE"`. Mã hóa nhiều byte sẽ là mã hóa lớn. |
tùy chọn | mang các giá trị thuộc tính tùy chọn |
Trả lại
- một phiên bản mới của UnicodeTranscode
lỗi UnicodeTranscode.Options tĩnh công khai (Lỗi chuỗi)
Thông số
lỗi | Chính sách xử lý lỗi khi tìm thấy định dạng không hợp lệ trong đầu vào. Giá trị 'nghiêm ngặt' sẽ khiến thao tác tạo ra lỗi InvalidArgument trên bất kỳ định dạng đầu vào không hợp lệ nào. Giá trị 'thay thế' (mặc định) sẽ khiến thao tác thay thế mọi định dạng không hợp lệ trong đầu vào bằng điểm mã `replacement_char`. Giá trị 'bỏ qua' sẽ khiến thao tác bỏ qua mọi định dạng không hợp lệ trong đầu vào và không tạo ra ký tự đầu ra tương ứng. |
---|
Đầu ra công khai < TString > đầu ra ()
Một tensor chuỗi chứa văn bản unicode được mã hóa bằng `output_encoding`.
UnicodeTranscode.Options tĩnh công khai thay thếControlCharacters (Boolean thay thếControlCharacters)
Thông số
ký tự điều khiển thay thế | Có thay thế các ký tự điều khiển C0 (00-1F) bằng `replacement_char` hay không. Mặc định là sai. |
---|
UnicodeTranscode.Options thay thế tĩnh công khaiChar (Char thay thế dài)
Thông số
thay thếChar | Điểm mã ký tự thay thế sẽ được sử dụng thay cho bất kỳ định dạng không hợp lệ nào trong đầu vào khi `errors='replace'`. Bất kỳ điểm mã unicode hợp lệ nào cũng có thể được sử dụng. Giá trị mặc định là ký tự thay thế unicode mặc định là 0xFFFD hoặc U+65533.) Lưu ý rằng đối với UTF-8, việc chuyển ký tự thay thế có thể biểu thị bằng 1 byte, chẳng hạn như '', sẽ duy trì sự liên kết chuỗi với nguồn vì các byte không hợp lệ sẽ được thay thế bằng thay thế 1 byte. Đối với UTF-16-BE và UTF-16-LE, bất kỳ ký tự thay thế 1 hoặc 2 byte nào sẽ duy trì căn chỉnh byte với nguồn. |
---|