tensorflow:: عملیات:: یونیکدترانسکد
#include <string_ops.h>متن ورودی را از یک کدگذاری منبع به یک کدگذاری مقصد تبدیل کد کنید.
خلاصه
ورودی یک تانسور رشتهای با هر شکلی است. خروجی یک تانسور رشتهای با همان شکل است که شامل رشتههای تبدیلشده است. رشتههای خروجی همیشه یونیکد معتبر هستند. اگر ورودی حاوی موقعیتهای کدگذاری نامعتبر باشد، ویژگی errors سیاست نحوه برخورد با آنها را تعیین میکند. اگر از سیاست پیشفرض مدیریت خطا استفاده شود، قالببندی نامعتبر در خروجی با replacement_char جایگزین میشود. اگر سیاست errors ignore ، هر موقعیت کدگذاری نامعتبر در ورودی نادیده گرفته میشود و در خروجی گنجانده نمیشود. اگر روی strict تنظیم شود، هر قالببندی نامعتبر منجر به خطای InvalidArgument خواهد شد.
این عملیات میتواند به همراه output_encoding = input_encoding برای اعمال قالببندی صحیح برای ورودیها، حتی اگر از قبل در کدگذاری مورد نظر باشند، استفاده شود.
اگر ورودی با یک علامت ترتیب بایت (Byte Order Mark) که برای تعیین کدگذاری مورد نیاز است، پیشوند شده باشد (مثلاً اگر کدگذاری UTF-16 باشد و BOM نشان دهنده big-endian باشد)، آن BOM مصرف میشود و در خروجی منتشر نمیشود. اگر کدگذاری ورودی با یک endianness صریح علامت گذاری شده باشد (مثلاً UTF-16-BE)، BOM به عنوان یک فضای بدون شکست (non-breaking-space) تفسیر میشود و در خروجی حفظ میشود (از جمله همیشه برای UTF-8).
نتیجه نهایی این است که اگر ورودی به عنوان یک endianness صریح علامتگذاری شود، کدگذاری به تمام نقاط کد در منبع وفادار میماند. اگر با endianness صریح علامتگذاری نشود، BOM بخشی از خود رشته محسوب نمیشود، بلکه به عنوان فراداده در نظر گرفته میشود و بنابراین در خروجی حفظ نمیشود.
استدلالها:
- دامنه: یک شیء دامنه
- ورودی: متنی که قرار است پردازش شود. میتواند هر شکلی داشته باشد.
- input_encoding: کدگذاری متن رشتههای ورودی. این هر یک از کدگذاریهای پشتیبانی شده توسط مبدلهای الگوریتمی 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'استفاده میشود. هر نقطه کد یونیکد معتبری میتواند استفاده شود. مقدار پیشفرض، کاراکتر جایگزینی یونیکد پیشفرض 0xFFFD یا U+65533 است.)
توجه داشته باشید که برای UTF-8، ارسال یک کاراکتر جایگزین قابل بیان در ۱ بایت، مانند ' '، تراز رشته را با منبع حفظ میکند زیرا بایتهای نامعتبر با یک جایگزین ۱ بایتی جایگزین میشوند. برای UTF-16-BE و UTF-16-LE، هر کاراکتر جایگزین ۱ یا ۲ بایتی، تراز بایت را با منبع حفظ میکند.
- replace_control_characters: آیا کاراکترهای کنترلی C0 (00-1F) با
replacement_charجایگزین شوند یا خیر. مقدار پیشفرض false است.
بازده:
-
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:: عملیات:: یونیکدترانسکد:: جذابیتها | تنظیمکنندههای ویژگی اختیاری برای UnicodeTranscode . |
ویژگیهای عمومی
عملیات
Operation operation
خروجی
::tensorflow::Output output
کارکردهای عمومی
یونیکدترانسکد
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 )
گره
::tensorflow::Node * node() const
عملگر::tensorflow::ورودی
operator::tensorflow::Input() const
عملگر::tensorflow::خروجی
operator::tensorflow::Output() const
توابع استاتیک عمومی
خطاها
Attrs Errors( StringPiece x )
کاراکترهای کنترل جایگزین
Attrs ReplaceControlCharacters( bool x )
جایگزینی
Attrs ReplacementChar( int64 x )
جز در مواردی که غیر از این ذکر شده باشد،محتوای این صفحه تحت مجوز Creative Commons Attribution 4.0 License است. نمونه کدها نیز دارای مجوز Apache 2.0 License است. برای اطلاع از جزئیات، به خطمشیهای سایت Google Developers مراجعه کنید. جاوا علامت تجاری ثبتشده Oracle و/یا شرکتهای وابسته به آن است.
تاریخ آخرین بهروزرسانی 2026-11-05 بهوقت ساعت هماهنگ جهانی.