tensoreflusso:: ops:: UnicodeTranscode
#include <string_ops.h>
Transcodifica il testo di input da una codifica di origine a una codifica di destinazione.
Riepilogo
L'input è un tensore di stringa di qualsiasi forma. L'output è un tensore di stringa della stessa forma contenente le stringhe transcodificate. Le stringhe di output sono sempre Unicode valide. Se l'input contiene posizioni di codifica non valide, l'attributo errors
imposta la politica su come gestirle. Se viene utilizzata la politica di gestione degli errori predefinita, la formattazione non valida verrà sostituita nell'output da replacement_char
. Se la politica degli errori è ignore
, qualsiasi posizione di codifica non valida nell'input viene ignorata e non inclusa nell'output. Se impostato su strict
, qualsiasi formattazione non valida genererà un errore InvalidArgument.
Questa operazione può essere utilizzata con output_encoding = input_encoding
per imporre la formattazione corretta per gli input anche se sono già nella codifica desiderata.
Se l'input è preceduto da un Byte Order Mark necessario per determinare la codifica (ad esempio se la codifica è UTF-16 e la BOM indica big-endian), allora quella BOM verrà consumata e non emessa nell'output. Se la codifica dell'input è contrassegnata con un endianness esplicito (ad esempio UTF-16-BE), allora il BOM viene interpretato come uno spazio unificatore e viene conservato nell'output (incluso sempre per UTF-8).
Il risultato finale è che se l'input è contrassegnato come endianness esplicito, la transcodifica è fedele a tutti i punti di codice nell'origine. Se non è contrassegnata con un endianness esplicito, la BOM non è considerata parte della stringa stessa ma come metadati, e quindi non viene conservata nell'output.
Argomenti:
- scope: un oggetto Scope
- input: il testo da elaborare. Può avere qualsiasi forma.
- input_encoding: codifica del testo delle stringhe di input. Questa è una qualsiasi delle codifiche supportate dai convertitori algoritmici ICU ucnv. Esempi:
"UTF-16", "US ASCII", "UTF-8"
. - output_encoding: la codifica unicode da utilizzare nell'output. Deve essere uno tra
"UTF-8", "UTF-16-BE", "UTF-32-BE"
. Le codifiche multibyte saranno big-endian.
Attributi facoltativi (vedi Attrs
):
- errori: criterio di gestione degli errori quando nell'input è stata trovata una formattazione non valida. Il valore di 'strict' farà sì che l'operazione produca un errore InvalidArgument su qualsiasi formattazione di input non valida. Un valore "replace" (il valore predefinito) farà sì che l'operazione sostituisca qualsiasi formattazione non valida nell'input con il punto di codice
replacement_char
. Un valore "ignore" farà sì che l'operazione salti qualsiasi formattazione non valida nell'input e non produca alcun carattere di output corrispondente. - replace_char: il punto di codice del carattere sostitutivo da utilizzare al posto di qualsiasi formattazione non valida nell'input quando
errors='replace'
. È possibile utilizzare qualsiasi punto di codice Unicode valido. Il valore predefinito è che il carattere sostitutivo Unicode predefinito è 0xFFFD o U+65533.)
Tieni presente che per UTF-8, il passaggio di un carattere sostitutivo esprimibile in 1 byte, ad esempio " ", manterrà l'allineamento della stringa all'origine poiché i byte non validi verranno sostituiti con una sostituzione di 1 byte. Per UTF-16-BE e UTF-16-LE, qualsiasi carattere di sostituzione di 1 o 2 byte manterrà l'allineamento dei byte all'origine.
- replace_control_characters: indica se sostituire i caratteri di controllo C0 (00-1F) con
replacement_char
. L'impostazione predefinita è falsa.
Resi:
-
Output
: un tensore di stringa contenente testo Unicode codificato utilizzandooutput_encoding
.
Costruttori e distruttori | |
---|---|
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) |
Attributi pubblici | |
---|---|
operation | |
output |
Funzioni pubbliche | |
---|---|
node () const | ::tensorflow::Node * |
operator::tensorflow::Input () const | |
operator::tensorflow::Output () const |
Funzioni pubbliche statiche | |
---|---|
Errors (StringPiece x) | |
ReplaceControlCharacters (bool x) | |
ReplacementChar (int64 x) |
Strutture | |
---|---|
tensorflow:: ops:: UnicodeTranscode:: Attrs | Setter di attributi facoltativi per UnicodeTranscode . |
Attributi pubblici
operazione
Operation operation
produzione
::tensorflow::Output output
Funzioni pubbliche
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 )
nodo
::tensorflow::Node * node() const
operatore::tensorflow::Input
operator::tensorflow::Input() const
operatore::tensorflow::Output
operator::tensorflow::Output() const
Funzioni pubbliche statiche
Errori
Attrs Errors( StringPiece x )
Sostituisci caratteri di controllo
Attrs ReplaceControlCharacters( bool x )
SostituzioneChar
Attrs ReplacementChar( int64 x )