StringSplit

StringSplit - 20

版本

  • 名称: StringSplit (GitHub)

  • : main

  • 自版本起: 20

  • 函数: False

  • 支持级别: SupportType.COMMON

  • 形状推断: True

此版本的运算符已自版本 20 起可用。

摘要

StringSplit 根据分隔符属性和最大拆分属性将字符串张量的元素拆分为子字符串。

此运算符的第一个输出是字符串张量,表示将每个输入字符串在delimiter 子字符串上拆分后的子字符串。此张量比输入张量多一个秩,以便存储每个输入元素的子字符串(其中输入张量不为空)。请注意,为了确保在最终维度中存在相同数量的元素,此张量将填充空字符串,如以下示例所示。连续分隔符不会分组在一起,被认为是分隔空字符串,除非delimiter 未指定或为空字符串 (“”)。在delimiter 未指定或为空字符串的情况下,连续空格字符被视为单个分隔符,并且输出中将删除前导或尾随空格。

第二个输出张量表示生成的子字符串的数量。maxsplit 可用于限制执行的拆分次数 - 在maxsplit 次拆分后,如果字符串未完全拆分,则最终拆分点之后的输入字符串的尾随后缀也将被添加。对于在maxsplit 中指定的拆分次数少于可能的元素,它没有影响。

属性

  • delimiter - STRING :

    要拆分的分隔符。如果未设置或设置为空字符串 (“”),则输入将按连续空格拆分。

  • maxsplit - INT :

    最大拆分次数(从左到右)。如果未设置(或如果可能的拆分次数少于 maxsplit),它将尽可能多地进行拆分。请注意,使用指定的maxsplit 返回的最大可能子字符串数量是maxsplit+1,因为maxsplit 次拆分后的剩余后缀包含在输出中。

输入

  • X (异构) - T1

    要拆分的字符串张量。

输出

  • Y (异构) - T2

    子字符串张量,表示在分隔符上拆分输入中的字符串的结果。请注意,为了确保在最终秩中存在相同数量的元素,此张量将填充任何必要的空字符串。

  • Z (异构) - T3

    为每个输入元素生成的子字符串的数量。

类型约束

  • T1 在 ( tensor(string) ) 中

    输入必须是 UTF-8 字符串张量

  • T2 在 ( tensor(string) ) 中

    子字符串张量。

  • T3 在 ( tensor(int64) ) 中

    生成的子字符串的数量。