将每个字符串解码为具有起始偏移量的代码点序列。
用法
tf.strings.unicode_decode_with_offsets(
input, input_encoding, errors='replace', replacement_char=65533,
replace_control_characters=False, name=None
)
参数
-
input
一个N
维度可能参差不齐的string
张量,形状为[D1...DN]
。N
必须是静态已知的。 -
input_encoding
用于解码每个字符串的 unicode 编码的字符串名称。 -
errors
指定无法使用指示的编码转换输入字符串时的响应。之一:'strict'
:为任何非法子字符串引发异常。'replace'
:用replacement_char
替换非法子字符串。'ignore'
:跳过非法子串。
-
replacement_char
当errors='replace'
时用于代替input
中的无效子字符串的替换代码点;并在replace_control_characters=True
时代替input
中的 C0 控制字符。 -
replace_control_characters
是否将 C0 控制字符(U+0000 - U+001F)
替换为replacement_char
。 -
name
操作的名称(可选)。
返回
-
一个元组
N+1
维张量(codepoints, start_offsets)
.codepoints
是一个int32
张量,形状为[D1...DN, (num_chars)]
。offsets
是一个int64
张量,形状为[D1...DN, (num_chars)]
。
如果
input
是标量,则返回的张量为tf.Tensor
,否则为tf.RaggedTensor
。
此操作类似于 tf.strings.decode(...)
,但它还返回其各自字符串中每个字符的起始偏移量。此信息可用于将字符与原始字节序列对齐。
返回一个元组 (codepoints, start_offsets)
其中:
codepoints[i1...iN, j]
是使用input_encoding
解码时input[i1...iN]
中第j
字符的 Unicode 代码点。start_offsets[i1...iN, j]
是使用input_encoding
解码时input[i1...iN]
中第j
字符的起始字节偏移量。
例子:
input = [s.encode('utf8') for s in (u'G\xf6\xf6dnight', u'\U0001f60a')]
result = tf.strings.unicode_decode_with_offsets(input, 'UTF-8')
result[0].to_list() # codepoints
[[71, 246, 246, 100, 110, 105, 103, 104, 116], [128522]]
result[1].to_list() # offsets
[[0, 1, 3, 5, 6, 7, 8, 9, 10], [0]]
相关用法
- Python tf.strings.unicode_decode用法及代码示例
- Python tf.strings.unicode_encode用法及代码示例
- Python tf.strings.unicode_split用法及代码示例
- Python tf.strings.unicode_split_with_offsets用法及代码示例
- Python tf.strings.unicode_script用法及代码示例
- Python tf.strings.unicode_transcode用法及代码示例
- Python tf.strings.unsorted_segment_join用法及代码示例
- Python tf.strings.upper用法及代码示例
- Python tf.strings.substr用法及代码示例
- Python tf.strings.reduce_join用法及代码示例
- Python tf.strings.regex_full_match用法及代码示例
- Python tf.strings.regex_replace用法及代码示例
- Python tf.strings.length用法及代码示例
- Python tf.strings.bytes_split用法及代码示例
- Python tf.strings.as_string用法及代码示例
- Python tf.strings.lower用法及代码示例
- Python tf.strings.split用法及代码示例
- Python tf.strings.join用法及代码示例
- Python tf.strings.to_hash_bucket用法及代码示例
- Python tf.strings.ngrams用法及代码示例
注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.strings.unicode_decode_with_offsets。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。