تحويل نص الإدخال من ترميز المصدر إلى ترميز الوجهة.
الإدخال عبارة عن موتر سلسلة من أي شكل. الإخراج عبارة عن موتر سلسلة من نفس الشكل يحتوي على السلاسل المحولة. سلاسل الإخراج صالحة دائمًا لرمز Unicode. إذا كان الإدخال يحتوي على مواضع ترميز غير صالحة، فإن سمة "الأخطاء" تحدد سياسة كيفية التعامل معها. إذا تم استخدام سياسة معالجة الأخطاء الافتراضية، فسيتم استبدال التنسيق غير الصالح في الإخراج بواسطة `replacement_char`. إذا كانت سياسة الأخطاء هي "التجاهل"، فسيتم تخطي أي مواضع ترميز غير صالحة في الإدخال ولا يتم تضمينها في الإخراج. إذا تم ضبطه على "صارم"، فإن أي تنسيق غير صالح سيؤدي إلى خطأ InvalidArgument.
يمكن استخدام هذه العملية مع `output_encoding = input_encoding` لفرض التنسيق الصحيح للمدخلات حتى لو كانت بالفعل بالتشفير المطلوب.
إذا كان الإدخال مسبوقًا بعلامة ترتيب البايت اللازمة لتحديد التشفير (على سبيل المثال، إذا كان التشفير هو UTF-16 وتشير قائمة مكونات الصنف إلى نهاية كبيرة)، فسيتم استهلاك قائمة مكونات الصنف هذه ولن يتم إرسالها إلى المخرجات. إذا تم تمييز تشفير الإدخال بعلامة endianness صريحة (على سبيل المثال UTF-16-BE)، فسيتم تفسير قائمة مكونات الصنف على أنها مسافة غير منقسمة ويتم الاحتفاظ بها في الإخراج (بما في ذلك UTF-8 دائمًا).
والنتيجة النهائية هي أنه إذا تم وضع علامة على الإدخال على أنه نهاية صريحة، فإن تحويل الشفرة يكون مطابقًا لجميع نقاط التشفير في المصدر. إذا لم يتم وضع علامة endianness صريحة عليه، فإن BOM لا يعتبر جزءًا من السلسلة نفسها ولكن كبيانات وصفية، وبالتالي لا يتم الاحتفاظ به في الإخراج.
أمثلة:
>>> tf.strings.unicode_transcode(["Hello"، "TensorFlow"، "2.x"]، "UTF-8"، "UTF-16-BE")
فئات متداخلة
فصل | UnicodeTranscode.Options | السمات الاختيارية لـ UnicodeTranscode |
الثوابت
خيط | OP_NAME | اسم هذه العملية كما هو معروف بواسطة محرك TensorFlow الأساسي |
الأساليب العامة
الإخراج <TString> | كإخراج () إرجاع المقبض الرمزي للموتر. |
UnicodeTranscode الثابت | إنشاء (نطاق النطاق ، المعامل < TString > الإدخال، سلسلة إدخال ترميز الإدخال، سلسلة إخراج ترميز، خيارات ... خيارات) طريقة المصنع لإنشاء فئة تغلف عملية UnicodeTranscode جديدة. |
UnicodeTranscode.Options ثابت | أخطاء (أخطاء السلسلة) |
الإخراج <TString> | انتاج () موتر سلسلة يحتوي على نص Unicode مشفر باستخدام "output_encoding". |
UnicodeTranscode.Options ثابت | استبدال أحرف التحكم (استبدال أحرف التحكم المنطقية) |
UnicodeTranscode.Options ثابت | استبدال شار (استبدال طويل شار) |
الطرق الموروثة
الثوابت
السلسلة النهائية الثابتة العامة OP_NAME
اسم هذه العملية كما هو معروف بواسطة محرك TensorFlow الأساسي
الأساليب العامة
الإخراج العام <TSTring> asOutput ()
إرجاع المقبض الرمزي للموتر.
المدخلات إلى عمليات TensorFlow هي مخرجات عملية TensorFlow أخرى. يتم استخدام هذه الطريقة للحصول على مقبض رمزي يمثل حساب الإدخال.
إنشاء UnicodeTranscode ثابت عام ( نطاق النطاق، المعامل < TString > الإدخال، String inputEncoding، StringputEncoding، Options... options)
طريقة المصنع لإنشاء فئة تغلف عملية UnicodeTranscode جديدة.
حدود
نِطَاق | النطاق الحالي |
---|---|
مدخل | النص المراد معالجته. يمكن أن يكون لها أي شكل. |
inputEncoding.inputEncoding | ترميز النص لسلاسل الإدخال. هذا هو أي من الترميزات التي تدعمها محولات خوارزمية ICU ucnv. أمثلة: `"UTF-16"، "US ASCII"، "UTF-8"`. |
importEncoding.outputEncoding | ترميز Unicode الذي سيتم استخدامه في الإخراج. يجب أن يكون واحدًا من `"UTF-8" و"UTF-16-BE" و"UTF-32-BE"`. ستكون الترميزات متعددة البايت ذات نهاية كبيرة. |
خيارات | يحمل قيم السمات الاختيارية |
عائدات
- مثيل جديد من UnicodeTranscode
أخطاء UnicodeTranscode.Options العامة الثابتة (أخطاء السلسلة)
حدود
أخطاء | خطأ في التعامل مع السياسة عند العثور على تنسيق غير صالح في الإدخال. ستؤدي قيمة "صارم" إلى ظهور خطأ InvalidArgument في أي تنسيق إدخال غير صالح. ستؤدي قيمة "استبدال" (القيمة الافتراضية) إلى استبدال العملية لأي تنسيق غير صالح في الإدخال بنقطة التشفير "replacement_char". ستؤدي قيمة "تجاهل" إلى تخطي العملية لأي تنسيق غير صالح في الإدخال وعدم إنتاج أي حرف إخراج مطابق. |
---|
UnicodeTranscode.Options الثابت العام ، استبدالControlCharacters (استبدال منطقي، ControlCharacters)
حدود
استبدال أحرف التحكم | ما إذا كان سيتم استبدال أحرف التحكم C0 (00-1F) بـ "replacement_char". الافتراضي خطأ. |
---|
UnicodeTranscode.Options العام الثابت استبدالChar (استبدال طويلChar)
حدود
استبدالChar | نقطة رمز الحرف البديلة التي سيتم استخدامها بدلاً من أي تنسيق غير صالح في الإدخال عند `errors='replace'`. يمكن استخدام أي نقطة ترميز Unicode صالحة. القيمة الافتراضية هي أن حرف استبدال Unicode الافتراضي هو 0xFFFD أو U+65533.) لاحظ أنه بالنسبة إلى UTF-8، فإن تمرير حرف بديل يمكن التعبير عنه ببايت واحد، مثل ' '، سيحافظ على محاذاة السلسلة إلى المصدر حيث سيتم استبدال البايتات غير الصالحة باستبدال بايت واحد. بالنسبة إلى UTF-16-BE وUTF-16-LE، فإن أي حرف بديل مكون من 1 أو 2 بايت سيحافظ على محاذاة البايت مع المصدر. |
---|