UnicodeTranscode

UnicodeTranscode kelas akhir publik

Transkode teks masukan dari pengkodean sumber ke pengkodean tujuan.

Inputnya adalah tensor string dalam bentuk apa pun. Outputnya adalah tensor string dengan bentuk yang sama yang berisi string yang ditranskode. String keluaran selalu berupa unicode yang valid. Jika input berisi posisi pengkodean yang tidak valid, atribut `errors` akan menetapkan kebijakan tentang cara menanganinya. Jika kebijakan penanganan kesalahan default digunakan, format yang tidak valid akan digantikan dalam output dengan `replacement_char`. Jika kebijakan kesalahan adalah `mengabaikan`, posisi pengkodean apa pun yang tidak valid dalam masukan akan dilewati dan tidak disertakan dalam keluaran. Jika disetel ke `strict` maka format apa pun yang tidak valid akan menghasilkan kesalahan InvalidArgument.

Operasi ini dapat digunakan dengan `output_encoding = input_encoding` untuk menerapkan format input yang benar meskipun input sudah dalam pengkodean yang diinginkan.

Jika input diawali dengan Tanda Urutan Byte yang diperlukan untuk menentukan pengkodean (misalnya jika pengkodean adalah UTF-16 dan BOM menunjukkan big-endian), maka BOM tersebut akan dikonsumsi dan tidak dipancarkan ke output. Jika pengkodean input ditandai dengan endianness eksplisit (misalnya UTF-16-BE), maka BOM ditafsirkan sebagai non-breaking-space dan dipertahankan dalam output (termasuk selalu untuk UTF-8).

Hasil akhirnya adalah jika masukan ditandai sebagai endianness eksplisit, transcoding akan setia pada semua titik kode di sumber. Jika tidak ditandai dengan endianness eksplisit, BOM tidak dianggap sebagai bagian dari string itu sendiri melainkan sebagai metadata, sehingga tidak disimpan dalam output.

Contoh:

>>> tf.strings.unicode_transcode(["Halo", "TensorFlow", "2.x"], "UTF-8", "UTF-16-BE") >>> tf.strings.unicode_transcode(["A", "B", "C"], "US ASCII", "UTF-8").numpy() array([b'A', b'B' , b'C'], dtype=objek)

Kelas Bersarang

kelas UnicodeTranscode.Opsi Atribut opsional untuk UnicodeTranscode

Konstanta

Rangkaian OP_NAME Nama operasi ini dikenal dengan mesin inti TensorFlow

Metode Publik

Keluaran <TString>
sebagai Keluaran ()
Mengembalikan pegangan simbolis tensor.
UnicodeTranscode statis
buat ( Lingkup lingkup, Operan < TString > input, String inputEncoding, String outputEncoding, Opsi... opsi)
Metode pabrik untuk membuat kelas yang membungkus operasi UnicodeTranscode baru.
UnicodeTranscode.Opsi statis
kesalahan (kesalahan string)
Keluaran <TString>
keluaran ()
Tensor string berisi teks unicode yang dikodekan menggunakan `output_encoding`.
UnicodeTranscode.Opsi statis
replaceControlCharacters (Boolean replaceControlCharacters)
UnicodeTranscode.Opsi statis
replacementChar (Char pengganti panjang)

Metode Warisan

Konstanta

String akhir statis publik OP_NAME

Nama operasi ini dikenal dengan mesin inti TensorFlow

Nilai Konstan: "UnicodeTranscode"

Metode Publik

Keluaran publik < TString > asOutput ()

Mengembalikan pegangan simbolis tensor.

Masukan ke operasi TensorFlow adalah keluaran dari operasi TensorFlow lainnya. Metode ini digunakan untuk mendapatkan pegangan simbolis yang mewakili perhitungan input.

pembuatan UnicodeTranscode statis publik ( Lingkup lingkup, masukan Operan <TString> , Enkode masukan string, Enkode keluaran string, Opsi... opsi)

Metode pabrik untuk membuat kelas yang membungkus operasi UnicodeTranscode baru.

Parameter
cakupan ruang lingkup saat ini
memasukkan Teks yang akan diproses. Bisa berbentuk apa saja.
masukanPengkodean Pengodean teks dari string masukan. Ini adalah salah satu pengkodean yang didukung oleh konverter algoritmik ICU ucnv. Contoh: `"UTF-16", "US ASCII", "UTF-8"`.
pengkodean keluaran Pengkodean unicode yang akan digunakan dalam output. Harus salah satu dari `"UTF-8", "UTF-16-BE", "UTF-32-BE"`. Pengkodean multi-byte akan menjadi big-endian.
pilihan membawa nilai atribut opsional
Kembali
  • contoh baru UnicodeTranscode

kesalahan UnicodeTranscode.Options statis publik (kesalahan string)

Parameter
kesalahan Kebijakan penanganan kesalahan ketika ditemukan format yang tidak valid pada input. Nilai 'strict' akan menyebabkan operasi menghasilkan kesalahan InvalidArgument pada format input apa pun yang tidak valid. Nilai 'ganti' (default) akan menyebabkan operasi mengganti format apa pun yang tidak valid dalam input dengan titik kode `replacement_char`. Nilai 'abaikan' akan menyebabkan operasi melewatkan format masukan yang tidak valid dan tidak menghasilkan karakter keluaran yang sesuai.

Keluaran publik < TString > keluaran ()

Tensor string berisi teks unicode yang dikodekan menggunakan `output_encoding`.

UnicodeTranscode statis publik.Options replaceControlCharacters (Boolean replaceControlCharacters)

Parameter
gantiControlCharacters Apakah akan mengganti karakter kontrol C0 (00-1F) dengan `replacement_char`. Standarnya salah.

UnicodeTranscode statis publik.Options replacementChar (Char pengganti panjang)

Parameter
penggantianChar Titik kode karakter pengganti yang akan digunakan sebagai pengganti format yang tidak valid pada input ketika `errors='replace'`. Titik kode unicode apa pun yang valid dapat digunakan. Nilai default karakter pengganti unicode default adalah 0xFFFD atau U+65533.)

Perhatikan bahwa untuk UTF-8, meneruskan karakter pengganti yang dapat diekspresikan dalam 1 byte, seperti ' ', akan mempertahankan penyelarasan string ke sumber karena byte yang tidak valid akan diganti dengan pengganti 1 byte. Untuk UTF-16-BE dan UTF-16-LE, karakter pengganti 1 atau 2 byte apa pun akan mempertahankan penyelarasan byte ke sumbernya.