tensorflow :: ops :: UnicodeTranscode
#include <string_ops.h>
متن ورودی را از رمزگذاری منبع به رمزگذاری مقصد رمزگذاری کنید.
خلاصه
ورودی یک سنسور رشته ای از هر شکل است. خروجی یک سنسور رشته از همان شکل است که شامل رشته های رمزگذاری شده است. رشته های خروجی همیشه یونیکد معتبر هستند. اگر ورودی شامل موقعیت های رمزگذاری نامعتبر باشد ، ویژگی errors
خط مشی نحوه برخورد با آنها را تنظیم می کند. اگر از خط مشی پیش فرض مدیریت خطا استفاده شود ، قالب بندی نامعتبر توسط جایگزین_کارا در خروجی replacement_char
. اگر سیاست خطاها ignore
، هر موقعیت رمزگذاری نامعتبر در ورودی حذف شده و در خروجی گنجانده نمی شود. اگر روی strict
تنظیم شود ، هرگونه قالب بندی نامعتبر منجر به خطای InvalidArgument می شود.
از این عملیات می توان با output_encoding = input_encoding
تا قالب بندی صحیح ورودی ها را اعمال کند حتی اگر از قبل در رمزگذاری مورد نظر باشند.
اگر ورودی توسط یک Byte Order Mark برای تعیین کدگذاری پیشوند شود (به عنوان مثال اگر رمزگذاری UTF-16 باشد و BOM نشان دهنده endian باشد) ، آن BOM مصرف می شود و به خروجی ساطع نمی شود. اگر رمزگذاری ورودی با یک پایان مشخص مشخص شده باشد (به عنوان مثال UTF-16-BE) ، BOM به عنوان یک فضای شکستن تفسیر می شود و در خروجی حفظ می شود (از جمله همیشه برای UTF-8).
نتیجه نهایی این است که اگر ورودی به عنوان یک پایان پذیری صریح مشخص شود ، کد کد گذاری شده به تمام نقاط رمزگذاری در منبع وفادار است. اگر با انتهای صریح مشخص نشده باشد ، BOM خود بخشی از رشته در نظر گرفته نمی شود بلکه به عنوان فراداده است و بنابراین در خروجی حفظ نمی شود.
استدلال ها:
- دامنه: یک شی Sc Scope
- input: متن مورد پردازش. می تواند هر شکلی داشته باشد.
- input_encoding: رمزگذاری متن رشته های ورودی. این یکی از رمزگذاری های پشتیبانی شده توسط مبدل های الگوریتمی ICU ucnv است. مثالها:
"UTF-16", "US ASCII", "UTF-8"
. - output_encoding: رمزگذاری یونی کد برای استفاده در خروجی. باید یکی از
"UTF-8", "UTF-16-BE", "UTF-32-BE"
باشد. رمزگذاری های چند بایت ، endian بزرگ خواهند بود.
ویژگی های اختیاری (به Attrs
مراجعه کنید):
- خطا: خطای مدیریت خطا در صورت وجود قالب بندی نامعتبر در ورودی. مقدار "دقیق" باعث می شود که در هر قالب بندی ورودی نامعتبر ، خطای InvalidArgument ایجاد شود. یک مقدار 'جایگزین' (به طور پیش فرض) باعث خواهد شد که عملیات به جای هر قالب نامعتبر در ورودی با
replacement_char
نقطهکد. مقدار "نادیده گرفتن" باعث می شود که عملیات از قالب بندی نامعتبر در ورودی عبور کند و هیچ کاراکتر خروجی مربوطه تولید نکند. - alternative_char: رمز رمز کاراکتر جایگزین برای جایگزینی هر قالب بندی نامعتبر در ورودی هنگام
errors='replace'
. ممکن است از هر کد رمز معتبر یونی کد استفاده شود. مقدار پیش فرض کاراکتر جایگزین یونیکد پیش فرض 0xFFFD یا U + 65533 است.)
توجه داشته باشید که برای UTF-8 ، عبور یک کاراکتر جایگزین قابل بیان در 1 بایت ، مانند "" ، تراز رشته را با منبع حفظ می کند زیرا بایت های نامعتبر با جایگزینی 1 بایت جایگزین می شوند. برای UTF-16-BE و UTF-16-LE ، هر کاراکتر جایگزینی 1 یا 2 بایت ترازبندی بایت را با منبع حفظ می کند.
- replace_control_characters: آیا به جای شخصیت های کنترل 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
عملگر :: tensorflow :: ورودی
operator::tensorflow::Input() const
عملگر :: tensorflow :: خروجی
operator::tensorflow::Output() const
توابع استاتیک عمومی
خطاها
Attrs Errors( StringPiece x )
ReplaceControlCharacter
Attrs ReplaceControlCharacters( bool x )
جایگزین شار
Attrs ReplacementChar( int64 x )
جز در مواردی که غیر از این ذکر شده باشد،محتوای این صفحه تحت مجوز Creative Commons Attribution 4.0 License است. نمونه کدها نیز دارای مجوز Apache 2.0 License است. برای اطلاع از جزئیات، به خطمشیهای سایت Google Developers مراجعه کنید. جاوا علامت تجاری ثبتشده Oracle و/یا شرکتهای وابسته به آن است.
تاریخ آخرین بهروزرسانی 2020-04-20 بهوقت ساعت هماهنگ جهانی.