StringSplit

StringSplit - 20

版本

  • 名称: StringSplit (GitHub)

  • : main

  • 始于版本: 20

  • 函数: False

  • 支持级别: SupportType.COMMON

  • 形状推断: True

此版本的操作符自版本 20起可用。

摘要

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

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

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

属性

  • delimiter - STRING :

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

  • maxsplit - INT :

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

输入

  • X (异构) - T1

    要拆分的字符串张量。

输出

  • Y (异构) - T2

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

  • Z (异构) - T3

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

类型约束

  • T1 in ( tensor(string) )

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

  • T2 in ( tensor(string) )

    子字符串张量。

  • T3 in ( tensor(int64) )

    生成的子字符串的数量。