UnicodeTranscode

공개 최종 클래스 UnicodeTranscode

입력 텍스트를 소스 인코딩에서 대상 인코딩으로 트랜스코딩합니다.

입력은 모든 형태의 문자열 텐서입니다. 출력은 트랜스코딩된 문자열을 포함하는 동일한 모양의 문자열 텐서입니다. 출력 문자열은 항상 유효한 유니코드입니다. 입력에 잘못된 인코딩 위치가 포함된 경우 `errors` 속성은 이를 처리하는 방법에 대한 정책을 설정합니다. 기본 오류 처리 정책을 사용하는 경우 출력에서 ​​잘못된 형식이 `replacement_char`로 대체됩니다. 오류 정책이 '무시'인 경우 입력의 잘못된 인코딩 위치는 건너뛰고 출력에 포함되지 않습니다. 'strict'로 설정하면 잘못된 형식으로 인해 InvalidArgument 오류가 발생합니다.

이 작업을 `output_encoding = input_encoding`과 함께 사용하면 입력이 이미 원하는 인코딩으로 되어 있어도 입력에 대한 올바른 형식을 적용할 수 있습니다.

인코딩을 결정하는 데 필요한 바이트 순서 표시가 입력 앞에 붙는 경우(예: 인코딩이 UTF-16이고 BOM이 빅엔디안을 나타내는 경우) 해당 BOM이 소비되고 출력으로 내보내지지 않습니다. 입력 인코딩이 명시적인 엔디안(예: UTF-16-BE)으로 표시된 경우 BOM은 줄바꿈 없는 공백으로 해석되어 출력에 보존됩니다(항상 UTF-8의 경우 포함).

최종 결과는 입력이 명시적 엔디안으로 표시되면 트랜스코딩이 소스의 모든 코드 포인트에 충실하다는 것입니다. 명시적인 엔디안으로 표시되지 않은 경우 BOM은 문자열 자체의 일부가 아닌 메타데이터로 간주되므로 출력에 보존되지 않습니다.

예:

>>> tf.strings.unicode_transcode(["Hello", "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=객체)

중첩 클래스

수업 UnicodeTranscode.옵션 UnicodeTranscode 의 선택적 속성

상수

OP_NAME TensorFlow 코어 엔진에서 알려진 이 작업의 이름

공개 방법

출력 < TString >
출력 ()
텐서의 기호 핸들을 반환합니다.
정적 유니코드트랜스코드
생성 ( 범위 범위, 피연산자 < TString > 입력, 문자열 inputEncoding, 문자열 출력Encoding, 옵션... 옵션)
새로운 UnicodeTranscode 작업을 래핑하는 클래스를 생성하는 팩토리 메서드입니다.
정적 UnicodeTranscode.Options
오류 (문자열 오류)
출력 < TString >
출력 ()
`output_encoding`을 사용하여 인코딩된 유니코드 텍스트가 포함된 문자열 텐서입니다.
정적 UnicodeTranscode.Options
replacementControlCharacters (부울 교체ControlCharacters)
정적 UnicodeTranscode.Options
replacementChar (긴 replacementChar)

상속된 메서드

상수

공개 정적 최종 문자열 OP_NAME

TensorFlow 코어 엔진에서 알려진 이 작업의 이름

상수 값: "UnicodeTranscode"

공개 방법

공개 출력 < TString > asOutput ()

텐서의 기호 핸들을 반환합니다.

TensorFlow 작업에 대한 입력은 다른 TensorFlow 작업의 출력입니다. 이 메서드는 입력 계산을 나타내는 기호 핸들을 얻는 데 사용됩니다.

공개 정적 UnicodeTranscode 생성 ( 범위 범위, 피연산자 < TString > 입력, 문자열 inputEncoding, 문자열 출력Encoding, 옵션... 옵션)

새로운 UnicodeTranscode 작업을 래핑하는 클래스를 생성하는 팩토리 메서드입니다.

매개변수
범위 현재 범위
입력 처리할 텍스트입니다. 어떤 모양이든 가질 수 있습니다.
입력인코딩 입력 문자열의 텍스트 인코딩입니다. 이는 ICU ucnv 알고리즘 변환기가 지원하는 인코딩 중 하나입니다. 예: `"UTF-16", "US ASCII", "UTF-8"`.
출력인코딩 출력에 사용할 유니코드 인코딩입니다. `"UTF-8", "UTF-16-BE", "UTF-32-BE"` 중 하나여야 합니다. 멀티바이트 인코딩은 빅엔디안입니다.
옵션 선택적 속성 값을 전달합니다.
보고
  • UnicodeTranscode의 새로운 인스턴스

공개 정적 UnicodeTranscode.Options 오류 (문자열 오류)

매개변수
오류 입력에 잘못된 형식이 있는 경우 오류 처리 정책입니다. 'strict' 값을 사용하면 잘못된 입력 형식에 대해 작업에서 InvalidArgument 오류가 생성됩니다. 'replace' 값(기본값)을 사용하면 입력의 잘못된 형식을 `replacement_char` 코드 포인트로 바꾸는 작업이 수행됩니다. 'ignore' 값을 사용하면 작업이 입력에서 잘못된 형식을 건너뛰고 해당 출력 문자가 생성되지 않습니다.

공개 출력 < TString > 출력 ()

`output_encoding`을 사용하여 인코딩된 유니코드 텍스트가 포함된 문자열 텐서입니다.

공개 정적 UnicodeTranscode.Options 대체ControlCharacters (부울 대체ControlCharacters)

매개변수
교체컨트롤문자 C0 제어 문자(00-1F)를 `replacement_char`로 바꿀지 여부입니다. 기본값은 거짓입니다.

공개 정적 UnicodeTranscode.Options replacementChar (Long replacementChar)

매개변수
교체문자 `errors='replace'`일 때 입력의 유효하지 않은 형식화 대신 사용할 대체 문자 코드포인트입니다. 유효한 유니코드 코드 포인트를 사용할 수 있습니다. 기본값은 기본 유니코드 대체 문자가 0xFFFD 또는 U+65533입니다.)

UTF-8의 경우 ' '와 같이 1바이트로 표현 가능한 대체 문자를 전달하면 잘못된 바이트가 1바이트 대체 문자로 대체되므로 소스에 대한 문자열 정렬이 유지됩니다. UTF-16-BE 및 UTF-16-LE의 경우 1바이트 또는 2바이트 대체 문자는 소스에 대한 바이트 정렬을 유지합니다.