UnicodeTranscode

classe finale publique UnicodeTranscode

Transcodez le texte saisi d’un encodage source vers un encodage de destination.

L'entrée est un tenseur de chaîne de n'importe quelle forme. La sortie est un tenseur de chaînes de même forme contenant les chaînes transcodées. Les chaînes de sortie sont toujours unicode valide. Si l'entrée contient des positions de codage non valides, l'attribut « erreurs » définit la politique sur la façon de les traiter. Si la politique de gestion des erreurs par défaut est utilisée, le formatage non valide sera remplacé dans la sortie par `replacement_char`. Si la politique d'erreurs est d'"ignorer", toutes les positions de codage non valides dans l'entrée sont ignorées et ne sont pas incluses dans la sortie. S'il est défini sur « strict », tout formatage non valide entraînera une erreur InvalidArgument.

Cette opération peut être utilisée avec `output_encoding = input_encoding` pour appliquer un formatage correct pour les entrées même si elles sont déjà dans l'encodage souhaité.

Si l'entrée est préfixée par une marque d'ordre d'octet nécessaire pour déterminer le codage (par exemple, si le codage est UTF-16 et que la nomenclature indique big-endian), alors cette nomenclature sera consommée et non émise dans la sortie. Si le codage d'entrée est marqué d'un endianisme explicite (par exemple UTF-16-BE), alors la nomenclature est interprétée comme un espace insécable et est conservée dans la sortie (y compris toujours pour UTF-8).

Le résultat final est que si l'entrée est marquée comme étant un boutisme explicite, le transcodage est fidèle à tous les points de code de la source. Si elle n'est pas marquée d'une endianité explicite, la nomenclature n'est pas considérée comme faisant partie de la chaîne elle-même mais comme des métadonnées, et n'est donc pas conservée dans la sortie.

Exemples:

>>> tf.strings.unicode_transcode(["Bonjour", "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=objet)

Classes imbriquées

classe UnicodeTranscode.Options Attributs facultatifs pour UnicodeTranscode

Constantes

Chaîne OP_NAME Le nom de cette opération, tel que connu par le moteur principal TensorFlow

Méthodes publiques

Sortie < TString >
comme Sortie ()
Renvoie le handle symbolique du tenseur.
UnicodeTranscode statique
créer ( Scope scope, Operand < TString > input, String inputEncoding, String outputEncoding, Options... options)
Méthode d'usine pour créer une classe encapsulant une nouvelle opération UnicodeTranscode.
UnicodeTranscode.Options statique
erreurs (erreurs de chaîne)
Sortie < TString >
sortir ()
Un tenseur de chaîne contenant du texte Unicode codé à l'aide de `output_encoding`.
UnicodeTranscode.Options statique
replaceControlCharacters (booléen replaceControlCharacters)
UnicodeTranscode.Options statique
remplacementChar (Long remplacementChar)

Méthodes héritées

Constantes

chaîne finale statique publique OP_NAME

Le nom de cette opération, tel que connu par le moteur principal TensorFlow

Valeur constante : "UnicodeTranscode"

Méthodes publiques

sortie publique < TString > asOutput ()

Renvoie le handle symbolique du tenseur.

Les entrées des opérations TensorFlow sont les sorties d'une autre opération TensorFlow. Cette méthode est utilisée pour obtenir un handle symbolique qui représente le calcul de l’entrée.

public static UnicodeTranscode create ( Scope scope, Operand < TString > input, String inputEncoding, String outputEncoding, Options... options)

Méthode d'usine pour créer une classe encapsulant une nouvelle opération UnicodeTranscode.

Paramètres
portée portée actuelle
saisir Le texte à traiter. Peut avoir n'importe quelle forme.
inputEncoding Encodage du texte des chaînes d'entrée. Il s'agit de l'un des codages pris en charge par les convertisseurs algorithmiques ICU ucnv. Exemples : `"UTF-16", "US ASCII", "UTF-8"`.
sortieEncodage Le codage Unicode à utiliser dans la sortie. Doit être l'un des `"UTF-8", "UTF-16-BE", "UTF-32-BE"`. Les encodages multi-octets seront big-endian.
choix porte des valeurs d'attributs facultatifs
Retour
  • une nouvelle instance d'UnicodeTranscode

erreurs publiques statiques UnicodeTranscode.Options (erreurs de chaîne)

Paramètres
les erreurs Politique de gestion des erreurs lorsqu’un formatage non valide est trouvé dans l’entrée. La valeur de « strict » entraînera la production d’une erreur InvalidArgument sur tout formatage d’entrée non valide. Une valeur de « replace » (la valeur par défaut) entraînera le remplacement par l'opération de tout formatage non valide dans l'entrée par le point de code « replacement_char ». Une valeur de « ignorer » entraînera l'opération à ignorer tout formatage non valide dans l'entrée et à ne produire aucun caractère de sortie correspondant.

sortie publique < TString > sortie ()

Un tenseur de chaîne contenant du texte Unicode codé à l'aide de `output_encoding`.

public statique UnicodeTranscode.Options replaceControlCharacters (Boolean replaceControlCharacters)

Paramètres
replaceControlCharacters S'il faut remplacer les caractères de contrôle C0 (00-1F) par le `replacement_char`. La valeur par défaut est fausse.

public statique UnicodeTranscode.Options remplacementChar (Long remplacementChar)

Paramètres
remplacementChar Le point de code du caractère de remplacement à utiliser à la place de tout formatage non valide dans l'entrée lorsque `errors='replace'`. Tout point de code Unicode valide peut être utilisé. La valeur par défaut est que le caractère de remplacement Unicode par défaut est 0xFFFD ou U+65533.)

Notez que pour UTF-8, le passage d'un caractère de remplacement exprimable sur 1 octet, tel que « », préservera l'alignement de la chaîne sur la source puisque les octets non valides seront remplacés par un remplacement de 1 octet. Pour UTF-16-BE et UTF-16-LE, tout caractère de remplacement de 1 ou 2 octets préservera l’alignement des octets sur la source.