UnicodeTranscode

מחלקה סופית ציבורית UnicodeTranscode

המרת טקסט הקלט מקידוד מקור לקידוד יעד.

הקלט הוא טנסור מיתר מכל צורה. הפלט הוא טנסור מחרוזת מאותה צורה המכילה את המחרוזות שעברו טרנסקוד. מחרוזות פלט הן תמיד unicode חוקיות. אם הקלט מכיל עמדות קידוד לא חוקיות, התכונה 'שגיאות' מגדירה את המדיניות כיצד לטפל בהן. אם נעשה שימוש במדיניות ברירת המחדל לטיפול בשגיאות, עיצוב לא חוקי יוחלף בפלט ב-'replacement_char'. אם מדיניות השגיאות היא 'להתעלם', כל מיקומי קידוד לא חוקיים בקלט ידלג ולא נכלל בפלט. אם הוא מוגדר ל'strict' אז כל עיצוב לא חוקי יגרום לשגיאת InvalidArgument.

ניתן להשתמש בפעולה זו עם `output_encoding = input_encoding` כדי לאכוף עיצוב נכון עבור קלט גם אם הם כבר בקידוד הרצוי.

אם לקלט יש קידומת סימן סדר בתים הדרוש לקביעת הקידוד (למשל אם הקידוד הוא UTF-16 וה-BOM מציין big-endian), אז ה-BOM הזה נצרך ולא ייפלט לתוך הפלט. אם קידוד הקלט מסומן ב-endianness מפורשת (למשל UTF-16-BE), אזי ה-BOM מתפרש כמרחב שאינו שביר ונשמר בפלט (כולל תמיד עבור UTF-8).

התוצאה הסופית היא שאם הקלט מסומן כ- endianness מפורש, ההמרה נאמן לכל נקודות הקוד במקור. אם הוא לא מסומן ב-endianness מפורש, ה-BOM אינו נחשב לחלק מהמחרוזת עצמה אלא כמטא נתונים, ולכן אינו נשמר בפלט.

דוגמאות:

>>> tf.strings.unicode_transcode(["שלום", "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=object)

כיתות מקוננות

מעמד UnicodeTranscode.Options תכונות אופציונליות עבור UnicodeTranscode

קבועים

חוּט OP_NAME השם של המבצע הזה, כפי שידוע על ידי מנוע הליבה של TensorFlow

שיטות ציבוריות

פלט < TString >
asOutput ()
מחזירה את הידית הסמלית של הטנזור.
סטטי UnicodeTranscode
צור ( scope scope, Operand < TSString > input, String inputEncoding, String outputEncoding, Options... options)
שיטת מפעל ליצירת מחלקה העוטפת פעולת UnicodeTranscode חדשה.
סטטי UnicodeTranscode.Options
שגיאות (שגיאות מחרוזות)
פלט < TString >
פלט ()
טנזור מחרוזת המכיל טקסט Unicode המקודד באמצעות `output_encoding`.
סטטי UnicodeTranscode.Options
replaceControlCharacters (בוליאני replaceControlCharacters)
סטטי UnicodeTranscode.Options
replacementChar (Long replacementChar)

שיטות בירושה

קבועים

מחרוזת סופית סטטית ציבורית OP_NAME

השם של המבצע הזה, כפי שידוע על ידי מנוע הליבה של TensorFlow

ערך קבוע: "UnicodeTranscode"

שיטות ציבוריות

פלט ציבורי < TString > asOutput ()

מחזירה את הידית הסמלית של הטנזור.

כניסות לפעולות TensorFlow הן יציאות של פעולת TensorFlow אחרת. שיטה זו משמשת להשגת ידית סמלית המייצגת את חישוב הקלט.

Public static UnicodeTranscode create ( scope scope, Operand < TSString > input, String inputEncoding, String outputEncoding, Options... options)

שיטת מפעל ליצירת מחלקה העוטפת פעולת UnicodeTranscode חדשה.

פרמטרים
תְחוּם ההיקף הנוכחי
קֶלֶט הטקסט שיש לעבד. יכול לקבל כל צורה.
קידוד קלט קידוד טקסט של מחרוזות הקלט. זהו כל אחד מהקידודים הנתמכים על ידי ממירים אלגוריתמיים של ICU ucnv. דוגמאות: `"UTF-16", "US ASCII", "UTF-8"`.
קידוד פלט קידוד ה-unicode לשימוש בפלט. חייב להיות אחד מבין `"UTF-8", "UTF-16-BE", "UTF-32-BE"`. קידודים מרובי-בתים יהיו גדולים.
אפשרויות נושא ערכי תכונות אופציונליות
החזרות
  • מופע חדש של UnicodeTranscode

שגיאות UnicodeTranscode.Options סטטיות ציבוריות (שגיאות מחרוזת)

פרמטרים
שגיאות מדיניות טיפול בשגיאות כאשר נמצא עיצוב לא חוקי בקלט. הערך של 'strict' יגרום לפעולה לייצר שגיאת InvalidArgument בכל עיצוב קלט לא חוקי. ערך 'replace' (ברירת המחדל) יגרום לפעולה להחליף כל עיצוב לא חוקי בקלט בנקודת הקוד 'replacement_char'. ערך של 'התעלם' יגרום לפעולה לדלג על כל עיצוב לא חוקי בקלט ולא לייצר תו פלט מתאים.

פלט ציבורי < TString > פלט ()

טנזור מחרוזת המכיל טקסט Unicode המקודד באמצעות `output_encoding`.

ציבורי סטטי UnicodeTranscode.Options replaceControlCharacters (Boolean replaceControlCharacters)

פרמטרים
להחליף תווים בקרה האם להחליף את תווי הבקרה C0 (00-1F) ב-'replacement_char'. ברירת המחדל היא שקר.

Public static UnicodeTranscode.Options replacementChar (Long replacementChar)

פרמטרים
החלפהChar נקודת הקוד של התווים החלופיים לשימוש במקום כל עיצוב לא חוקי בקלט כאשר `errors='replace'`. ניתן להשתמש בכל נקודת קוד חוקית של Unicode. ערך ברירת המחדל הוא תו החלפת ה-unicode המוגדר כברירת מחדל הוא 0xFFFD או U+65533.)

שים לב שעבור UTF-8, העברת תו חלופי שניתן לביטוי בבתים 1, כגון ' ', ישמר את יישור המחרוזת למקור שכן בתים לא חוקיים יוחלפו בתחליף של בתים אחד. עבור UTF-16-BE ו-UTF-16-LE, כל תו החלפת בתים של 1 או 2 ישמור את יישור בתים למקור.