将文本字符串拆分成子字符串表。
Split
函数将文本字符串拆分成子字符串表。
Split
可用于拆分以逗号分隔的列表、在各日期部分之间使用斜线的日期,并适用于使用定义完善的分隔符的其他情况。
分隔符字符串用于拆分文本字符串。 分隔符可以是零个、一个或多个字符,整体可以在文本字符串中找到匹配项。 使用零长度或
空白
字符串会逐个拆分各个字符。 匹配的分隔符不会在结果中返回。 如果没有找到匹配的分隔符,则将一次性返回整个文本字符串。
使用
Concat
函数可重新组合不带分隔符的字符串。
使用
MatchAll
函数可使用正则表达式拆分字符串。
这些示例演示如何将
Split
与
First
和
Last
函数一起使用来提取单个分隔子字符串。
Match
函数通常是一个更为简洁和强大的正则表达式选择。
Split
(
Text
,
Separator
)
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”