文档

strsplit

在指定的分隔符拆分字符串或字符向量

描述

例子

C= strsplit (str分裂str在空格处C.空白字符等价于集合中的任何序列{' ', ' \ f ', ' \ n ', ' \ r ', ' \ t ', ' \ v '}

如果str有连续的空白字符,那么strsplit将它们视为一个空白。

例子

C= strsplit (str分隔符分裂str指定的分隔符分隔符

如果str具有连续的分隔符,它们之间没有其他字符,那么strsplit将它们视为一个分隔符。例如,两者strsplit(“Hello, world”、“,”)strsplit(“你好…世界”、“,”)返回相同的输出。

例子

C= strsplit (str分隔符名称,值使用一个或多个名称-值对参数指定其他分隔符选项。例如,要将连续的分隔符视为单独的分隔符,可以指定“CollapseDelimiters”,假的

例子

C匹配= strsplit(___另外返回数组,匹配.的匹配参数Output包含所有分隔符strsplit分裂str.您可以将此语法与前面语法的任何输入参数一起使用。

例子

全部折叠

str =“西班牙的雨。”;C = strsplit(str)
C =1x4单元格数组{}{'西班牙'中的'}{'雨'}{'

C包含四个字符向量的单元格数组。

拆分包含逗号分隔值的字符向量。

data =1.21, 1.985, 1.955, 2.015, 1.885;C = strsplit(数据,”、“
C =1x5单元格阵列{'1.21'} {'1.985'} {'1.955'} {'2.015'} {'1.885'}

拆分一个字符向量,数据,其中包含单位米/秒在文本的两侧使用任意数量的空白。正则表达式,\ s *,匹配出现0次或多次的任何空白字符。

data =1.21米/s1.985米/s 1.955米/s2.015米/s 1.85米/s;[C,匹配]= strsplit(数据,“\ s * m / s \ s *”...“DelimiterType”“RegularExpression”
C =1x6单元格阵列{' 1.21 '}{‘1.985’}{‘1.955’}{‘2.015’}{‘1.885’}{0 x0 char}
场=1x5单元格阵列{'m/s'} {'m/s'} {'m/s'} {'m/s'}

在本例中,最后一个字符向量C是空的。这个空字符向量跟在最后一个匹配的分隔符后面。

myPath =“C: \ \ matlab工作”;C = strsplit(myPath,“\”
C =1x3单元阵列{'C:'} {'work'} {'matlab'}

拆分字符向量' '“是”,将多个分隔符视为一个。在字符向量单元格数组中指定多个分隔符。

str =西班牙的雨主要落在平原上;[C,匹配]= strsplit(str,{' '“是”},“CollapseDelimiters”,真正的)
C =1x11单元格数组列1到7{的}{‘r’}{在‘}{“Sp”}{“保持”}{“m”}{“ly”}列8到11{’’}{的}{“pl”}{' . '}
场=1x10单元格阵列列1到7{‘}{”自己  '} {' '} {' 还  '} {' '} {' ain '}{‘}列8到10  {' '} {' '} {' ain '}

在空格和上拆分相同的字符向量“是”,使用正则表达式并分别处理多个分隔符。

[C,匹配]= strsplit(str,{' \ s '“是”},“CollapseDelimiters”...假的,“DelimiterType”“RegularExpression”
C =1x13单元格阵列列1到6{的}{‘r’}{0 x0 char}{在‘}{“Sp”}{0 x0 char}列7到13{“保持”}{“m”}{“ly”}{’‘}{的}{“pl”}{' . '}
场=1x12单元格阵列列1到8{‘}{”自己 '} {' '} {' '} {' 还 '} {' '} {' '} {' ain '}列9到12  {' '} {' '} {' '} {' ain '}

在这种情况下,strsplit分别处理两个分隔符,因此输出中出现空字符向量C在连续匹配的分隔符之间。

拆分字符向量上的文本”、“'和'

str =培根、生菜和番茄;[C,匹配]= strsplit(str,{”、“'和'})
C =1x3单元阵列{'培根'}{'生菜'}{'和番茄'}
场=1x2单元阵列{', '} {', '}

因为命令列表”、“第一次和'和'包含”、“,strsplit函数将str在第一个分隔符上,并且从不继续到第二个分隔符。

如果颠倒分隔符的顺序,'和'需要优先考虑的事情。

str =培根、生菜和番茄;[C,匹配]= strsplit(str,{'和'”、“})
C =1x3单元阵列{'培根'}{'生菜'}{'番茄'}
场=1x2单元阵列{', '} {', and '}

输入参数

全部折叠

输入文本,指定为字符向量或字符串标量。

数据类型:字符|字符串

分隔字符,指定为字符向量1——- - - - - -n单元格数组的字符向量,或1——- - - - - -n字符串数组。指定的文本分隔符没有出现在输出中C

在单元格数组或字符串数组中指定多个分隔符。的strsplit函数将str关于分隔符.中分隔符出现的顺序分隔符除非多个分隔符在同一字符处开始匹配,否则这无关紧要str.这样的话strsplit中第一个匹配分隔符上的分隔分隔符

分隔符可以包括以下转义序列:

\\

反斜杠

\ 0

、一个

报警

\ b

退格

\ f

换页

\ n

新行

r \

回车

\ t

水平选项卡

v \

垂直制表符

例子:”、“

例子:{' - ', ', '}

数据类型:字符|细胞|字符串

名称-值对参数

的可选逗号分隔对名称,值参数。名字参数名称和价值对应的值。名字必须出现在引号内。您可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:“DelimiterType”、“RegularExpression”指示strsplit治疗分隔符作为正则表达式。

多个分隔符处理,指定为由逗号分隔的对组成“CollapseDelimiters”,要么真正的.如果真正的,然后插入连续的分隔符str被视为一体。如果,则连续的分隔符将被视为单独的分隔符,导致字符向量为空''匹配的分隔符之间的元素。

例子:“CollapseDelimiters”,真的

分隔符类型,指定为逗号分隔的对,由“DelimiterType”和下面的一个字符向量。

“简单” 除了转义序列,strsplit对待分隔符作为文字。
“RegularExpression” strsplit对待分隔符作为正则表达式。

在这两种情况下,分隔符可以包括转义序列。

输出参数

全部折叠

原始字符向量的一部分,作为字符向量的单元格数组或字符串数组返回。C总是包含比多一个元素匹配包含。因此,如果str的第一个元素以分隔符开始C不包含字符。如果str以分隔符结束,然后是其中的最后一个单元格C不包含字符。

标识的分隔符,作为字符向量的单元格数组或字符串数组返回。匹配总是比输出少包含一个元素C包含。如果str那么是字符向量还是字符向量的单元格数组呢匹配是单元格数组。如果str是字符串数组吗匹配是一个字符串数组。

提示

  • 从R2016b开始,分裂函数建议分割字符串数组的元素。

在R2013a中引入