tensorflow:: ops:: UnicodeTranscode

#include <string_ops.h>

قم بتحويل النص المدخل من ترميز المصدر إلى ترميز الوجهة.

ملخص

المدخل عبارة عن موتر نصي بأي شكل. والمخرج عبارة عن موتر نصي بنفس الشكل يحتوي على النصوص المُحوّلة. نصوص المخرجات دائمًا ما تكون يونيكود صالحة. إذا احتوى المدخل على مواضع ترميز غير صالحة، فإن خاصية errors تُحدد سياسة التعامل معها. في حال استخدام سياسة معالجة الأخطاء الافتراضية، سيتم استبدال التنسيق غير الصالح في المخرجات بالحرف replacement_char . إذا كانت سياسة الأخطاء هي ignore ، فسيتم تخطي أي مواضع ترميز غير صالحة في المدخلات ولن يتم تضمينها في المخرجات. أما إذا تم ضبطها على strict ، فسيؤدي أي تنسيق غير صالح إلى ظهور خطأ InvalidArgument.

يمكن استخدام هذه العملية مع output_encoding = input_encoding لفرض التنسيق الصحيح للمدخلات حتى لو كانت بالفعل بالترميز المطلوب.

إذا سُبقت المدخلات بعلامة ترتيب البايتات اللازمة لتحديد الترميز (مثلاً، إذا كان الترميز UTF-16 وتشير علامة ترتيب البايتات إلى ترتيب البايتات الكبير)، فسيتم استهلاك هذه العلامة ولن تُخرج في المخرجات. أما إذا كان ترميز المدخلات مُحددًا بترتيب البايتات بشكل صريح (مثلاً UTF-16-BE)، فسيتم تفسير علامة ترتيب البايتات على أنها مسافة غير قابلة للكسر، وسيتم الاحتفاظ بها في المخرجات (بما في ذلك دائمًا في حالة UTF-8).

والنتيجة النهائية هي أنه إذا تم تحديد ترتيب البايتات بشكل صريح في المدخلات، فإن عملية التحويل ستكون دقيقة لجميع نقاط الترميز في المصدر. أما إذا لم يتم تحديد ترتيب البايتات بشكل صريح، فلن يُعتبر BOM جزءًا من السلسلة نفسها، بل بيانات وصفية، وبالتالي لن يتم الاحتفاظ به في المخرجات.

الحجج:

  • النطاق: كائن النطاق
  • المدخلات: النص المراد معالجته. يمكن أن يكون له أي شكل.
  • ترميز_الإدخال: ترميز نص سلاسل الإدخال. وهو أي من الترميزات التي تدعمها محولات خوارزميات ICU ucnv. أمثلة: "UTF-16", "US ASCII", "UTF-8" .
  • output_encoding: ترميز يونيكود المستخدم في الإخراج. يجب أن يكون أحد الخيارات التالية "UTF-8", "UTF-16-BE", "UTF-32-BE" . ستكون الترميزات متعددة البايتات بنظام big-endian.

السمات الاختيارية (انظر Attrs ):

  • الأخطاء: سياسة معالجة الأخطاء عند وجود تنسيق غير صالح في المدخلات. القيمة 'strict' ستؤدي إلى ظهور خطأ InvalidArgument عند وجود أي تنسيق غير صالح في المدخلات. القيمة 'replace' (القيمة الافتراضية) ستؤدي إلى استبدال أي تنسيق غير صالح في المدخلات برمز replacement_char . القيمة 'ignore' ستؤدي إلى تجاهل أي تنسيق غير صالح في المدخلات وعدم إنتاج أي حرف مطابق في المخرجات.
  • replacement_char: رمز الحرف البديل الذي سيتم استخدامه بدلاً من أي تنسيق غير صالح في المدخلات عند errors='replace' . يمكن استخدام أي رمز Unicode صالح. القيمة الافتراضية هي 0xFFFD أو U+65533.

لاحظ أنه بالنسبة لترميز UTF-8، فإن تمرير حرف استبدال يُعبَّر عنه ببايت واحد، مثل ' '، سيحافظ على محاذاة السلسلة مع المصدر، حيث سيتم استبدال البايتات غير الصالحة بحرف استبدال من بايت واحد. أما بالنسبة لترميزي UTF-16-BE وUTF-16-LE، فإن أي حرف استبدال من بايت واحد أو بايتين سيحافظ على محاذاة البايتات مع المصدر.

  • استبدال_أحرف_التحكم: ما إذا كان سيتم استبدال أحرف التحكم C0 (00-1F) replacement_char . القيمة الافتراضية هي خطأ.

المرتجعات:

  • Output : موتر سلسلة نصية يحتوي على نص يونيكود مشفر باستخدام output_encoding .

البناة والمدمرون

UnicodeTranscode (const :: tensorflow::Scope & scope, :: tensorflow::Input input, StringPiece input_encoding, StringPiece output_encoding)
UnicodeTranscode (const :: tensorflow::Scope & scope, :: tensorflow::Input input, StringPiece input_encoding, StringPiece output_encoding, const UnicodeTranscode::Attrs & attrs)

السمات العامة

operation
output

الوظائف العامة

node () const
::tensorflow::Node *
operator::tensorflow::Input () const
operator::tensorflow::Output () const

الدوال الثابتة العامة

Errors (StringPiece x)
ReplaceControlCharacters (bool x)
ReplacementChar (int64 x)

الهياكل

tensorflow:: ops:: UnicodeTranscode:: Attrs

مُعدِّلات السمات الاختيارية لـ UnicodeTranscode .

السمات العامة

عملية

Operation operation

المخرجات

::tensorflow::Output output

الوظائف العامة

UnicodeTranscode

 UnicodeTranscode(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input,
  StringPiece input_encoding,
  StringPiece output_encoding
)

UnicodeTranscode

 UnicodeTranscode(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input,
  StringPiece input_encoding,
  StringPiece output_encoding,
  const UnicodeTranscode::Attrs & attrs
)

العقدة

::tensorflow::Node * node() const 

operator::tensorflow::Input

 operator::tensorflow::Input() const 

operator::tensorflow::Output

 operator::tensorflow::Output() const 

الدوال الثابتة العامة

أخطاء

Attrs Errors(
  StringPiece x
)

استبدال أحرف التحكم

Attrs ReplaceControlCharacters(
  bool x
)

شخصية بديلة

Attrs ReplacementChar(
  int64 x
)