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.

Ritorna:

  • Output : un tensore di stringa contenente testo Unicode codificato utilizzando output_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
)