Split 函数

适用于: 画布应用 Copilot Studio Desktop 流 模型驱动应用 Power Platform CLI Dataverse 函数 Power Pages

将文本字符串拆分成子字符串表。

描述

该函数将 Split 文本字符串分解为子字符串表。 用于 Split 拆分逗号分隔列表、使用日期部分之间的斜杠的日期,以及在使用定义完善的分隔符的其他情况下。

分隔符字符串用于拆分文本字符串。 分隔符可以是零个、一个或多个字符,整体可以在文本字符串中找到匹配项。 使用零长度或空白字符串会逐个拆分各个字符。 匹配的分隔符不会在结果中返回。 如果没有找到匹配的分隔符,则将一次性返回整个文本字符串。

使用 Concat 函数可重新组合不带分隔符的字符串。

使用 MatchAll 函数可使用正则表达式拆分字符串。

这些示例演示如何 Split 与 First 和 Last 函数一起使用来提取单个带分隔符的子字符串。 Match 函数通常是一个更为简洁和强大的正则表达式选择。

语法

Split( 文本、 分隔符 )

  • Text - 必填。 要拆分的文本。
  • separator - 必需。 拆分字符串时要使用的分隔符。 可以是零个、一个或多个字符。

示例

基本用法

公式 描述 结果
Split( "Apples, Oranges, Bananas", "," ) 根据逗号分隔符拆分各种水果。 由于拆分仅以逗号(而不是后面的空格)为依据,因此“Oranges”和“Bananas”前面会有空格。 具有包含以下值的 Value 列的单列表:“Apples”、“Oranges”、“Bananas”
TrimEnds( Split( "Apples, Oranges, Bananas", "," ) ) 与前面的示例相同,但在本例中, TrimEnds 函数删除了空间,该函数对生成的 Split单个列表进行作。 我们本来也可以使用分隔符 ", "(即逗号后面有空格),但这并不适用于不含空格或有两个空格的情况。 具有包含以下值的 Value 列的单列表:“Apples”、“Oranges”、“Bananas”
Split( "08/28/17", "/" ) 使用正斜线作为分隔符来拆分日期。 具有包含以下值的 Value 列的单列表:“08”、“28”、“17”

不同的分隔符

公式 描述 结果
Split( "Hello, World", "," ) 使用逗号作为分隔符来拆分词语。 第二个结果以空格开头,因为逗号后面紧跟此字符。 具有包含以下值的 Value 列的单列表:“Hello”、“World”
Split( "Hello, World", "o" ) 使用字符“o”作为分隔符来拆分字符串。 具有包含以下值的 Value 列的单列表:“Hell”、“W”、“rld”
Split( "Hello, World", "l" ) 使用单字符“l”作为分隔符来拆分字符串。 由于 Hello 中的两个 l 之间没有任何字符,因此返回空白值。 具有包含以下值的 Value 列的单列表:"He"、Blank()、"o, Wor"、"d"
Split( "Hello, World", "ll" ) 使用双字符“ll”作为分隔符来拆分字符串。 具有包含以下值的 Value 列的单列表:"He"、"o, World"
Split( "Hello, World", "%" ) 使用百分号作为分隔符来拆分字符串。 由于字符串中没有此分隔符,因此整个字符串作为一个结果返回。 具有包含以下值的 Value 列的单列表:"Hello, World"
Split( "Hello, World", "" ) 使用空字符串作为分隔符(零个字符)来拆分字符串。 这会逐个拆分字符串中的每个字符。 具有包含以下值的 Value 列的单列表:"H"、"e"、"l"、"l"、"o"、","、" "、"W"、"o"、"r"、"l"、"d"

子字符串提取

公式 描述 结果
First( Split( Last( Split( "Bob Jones <bob.jones@contoso.com>", "<" ) ).Result, ">" ) ).Result 根据开头分隔符 (<) 拆分字符串,然后使用 Last 将字符串提取到分隔符的右侧。 然后,公式基于结束分隔符 (>) 拆分结果,并使用 Right 将字符串提取到分隔符的左侧。 “bob.jones@contoso.com”
Match( "Bob Jones <bob.jones@contoso.com>", "<(?<email>.+)>" ).email 执行与上一个示例相同的基于分隔符的提取,但是使用 Match 函数和一个正则表达式。 “bob.jones@contoso.com”