分裂
在字符串数组中拆分字符串,或将日历持续时间拆分为数字和持续时间单位
语法
newStr = split(str)
newStr = split(str,分隔符)
newStr = split(str,分隔符,dim)
[newStr,matches] = split(___)
(X1, X2,…]=分裂(t,单位)
描述
分newStr
=分裂(str
)str
,并将结果作为输出数组返回newStr
.输入数组str
可以是字符串数组、字符向量或字符向量的单元格数组。如果str
是字符串数组,那么是newStr
.否则,newStr
是字符向量的单元格数组。newStr
不包括来自的空格字符str
.
如果str
包含多个元素,那么每个元素必须能被相同数量的子字符串整除。
如果
str
那么,字符串是标量还是字符向量newStr
是一个N
——- - - - - -1
字符向量的字符串数组或单元格数组,其中N
是子串的个数。如果
str
是一个米
——- - - - - -1
那么,是字符串数组还是单元格数组newStr
是一个米
——- - - - - -N
数组中。如果
str
是一个1
——- - - - - -米
那么,是字符串数组还是单元格数组newStr
是一个1
——- - - - - -米
——- - - - - -N
数组中。
对于任意大小的字符串数组或单元格数组,分裂
指引方向的N
大小为的第一个尾随维度的子字符串1
.
的每个元素子串的个数不相同str
,然后打电话分裂
在一个为
的元素除以str
一次一个。
例子
在空格处拆分字符串并重新连接它们
在空格处拆分字符串数组中的名称。然后对字符串重新排序,并将它们连接起来,使姓氏先于名字。
从R2017a开始,您可以使用双引号而不是字符串
函数。创建一个包含名称的3乘1字符串数组。
姓名= [“玛丽琼斯”;“约翰·斯宾塞”;“伊丽莎白年轻”]
名称=3×1字符串数组玛丽·琼斯约翰·斯宾塞伊丽莎白·杨
分裂的名字
在空白处,使其成为3 × 2的字符串数组。
Names = split(Names)
名称=3×2字符串数组"玛丽" "琼斯" "约翰" "斯宾塞" "伊丽莎白" "杨"
的列进行切换的名字
所以姓氏在第一列。在每个姓后面加逗号。
Names = [Names (:,2) Names (:,1)];Names (:,1) = Names (:,1) +”、“
名称=3×2字符串数组"琼斯" "玛丽" "斯宾塞" "约翰" "杨" "伊丽莎白"
把姓和名连起来。的加入
函数在它连接的字符串之间放置一个空格字符。在加入之后,的名字
是一个3乘1的字符串数组。
Names = join(Names)
名称=3×1字符串数组"琼斯,玛丽" "斯宾塞,约翰" "杨,伊丽莎白"
在分隔符拆分字符串并使用新分隔符连接
创建一个包含文件夹路径的字符串。从R2017a开始,您可以使用双引号而不是字符串
函数。
myPath =“/用户/ jdoe /我的文档/例子”
myPath = "/Users/jdoe/My Documents/Examples"
把这条路分开/
的性格。分裂
返回myFolders
作为一个5 × 1的字符串数组。第一个字符串是""
因为myPath
从/
的性格。
myFolders = split(myypath,“/”)
myFolders =5×1字符串数组"" "用户"" jdoe" "我的文档""示例"
加入myFolders
进入一条新的道路\
作为分隔符。添加C:
作为道路的起点。
myNewPath = join(myFolders,“\”);myNewPath =“C:”+ myNewPath
myNewPath = "C:\Users\jdoe\My Documents\Examples"
在多个分隔符处拆分字符串
从R2017a开始,您可以使用双引号而不是字符串
函数。
str =“一匹马!一匹马!我的王国换一匹马!”
str = "一匹马! "一匹马!我的王国换一匹马!”
分裂str
感叹号和空格字符。newStr
是一个10 × 1的字符串数组。最后一个字符串是空字符串,""
,因为最后一个字符在str
分隔符。
newStr = split(str,[”“,“啊!”])
newStr =12×1字符串数组“A”“马”“”“”“马”“”“我”“王国”“”“”“马”“
分隔符之间缺少数据的拆分字符串数组
创建一个字符串数组,其中每个元素都包含关于患者的逗号分隔的数据。从R2017a开始,您可以使用双引号而不是字符串
函数。
患者= [“姓,年龄、性别、身高、体重”;”亚当斯,47岁,F, 64123”;”琼斯68175……”;“王,M, 66180”;”38岁的史密斯,F, 63118”]
病人=5×1字符串数组“姓,年龄,性别,身高,体重”“亚当斯,47岁,F,64,123”“琼斯……68,175”“金,M,66,180”“史密斯,38岁,F,63,118”
拆分字符串数组。一对逗号之间没有任何内容表示数据缺失。当分裂
对重复的分隔符进行除法时,它返回空字符串作为输出数组的对应元素。
患者=分裂(患者,”、“)
病人=5×5字符串数组“姓”“时代”“性别”的“高度”“重量”“亚当斯”“47”“F”“64”“123”琼斯”“”“”““68”“175”“王”““M”“66”“180”“史密斯”“38”“F”“63”“118”
沿着指定的尺寸定向字符串
创建一个包含名称的3乘1字符串数组。从R2017a开始,您可以使用双引号而不是字符串
函数。
姓名= [“玛丽琼斯”;“约翰·斯宾塞”;“伊丽莎白年轻”]
名称=3×1字符串数组玛丽·琼斯约翰·斯宾塞伊丽莎白·杨
在空白处拆分数组。默认情况下,分裂
沿着大小为1的第一个尾随维度定向输出子字符串。自的名字
是一个3乘1的字符串数组,分裂
的第二个维度定向子字符串splitNames
:即列。
splitNames = split(names)
splitNames =3×2字符串数组"玛丽" "琼斯" "约翰" "斯宾塞" "伊丽莎白" "杨"
要沿行或第一个维度定位子字符串,请在指定分隔符之后指定维度。splitNames
现在是一个2 × 3的字符串数组,第一行是名字,第二行是姓氏。
splitNames = split(names,”“, 1)
splitNames =2×3字符串数组"玛丽" "约翰" "伊丽莎白" "琼斯" "斯宾塞" "杨"
分割字符串和返回分隔符
创建一个字符串。从R2017a开始,您可以使用双引号而不是字符串
函数。
str =培根、生菜和番茄
STR = "培根,生菜和番茄"
分裂str
分隔符。在字符串数组中返回拆分的结果,在第二个字符串数组中返回分隔符。分裂
当连续分隔符之间没有文本时,返回空字符串。
[newStr,matches] = split(str,[”和“,”、“,”“])
newStr =7×1字符串数组“培根" "" "生菜" "" "" "" "西红柿”
场=6×1字符串数组、" " " "、" " " "和“”
加入newStr
而且匹配
回到一起加入
函数。
originalStr = join(newStr,matches)
originalStr = "培根,生菜和番茄"
分割日历持续时间数组
创建一个calendarDuration
数组中。
T = calmonths(15:17) + caldays(8) + hours(1.2345)
T =1×3 calendarDuration数组1y 3mo 8d 1h 14m 4.2s 1y 4mo 8d 1h 14m 4.2s 1y 5mo 8d 1h 14m 4.2s
获取月、日和时间。
[m,d,t] = split(t,{)“月”,“天”,“时间”})
m =15 16 17
d =8 8 8
t =1×3持续时间数组01:14:04 01:14:04 01:14:04
得到年、月、日和时间。
[y,m,d,t] = split(t,{)“年”,“月”,“天”,“时间”})
y =1 1 1
m =3 4 5
d =8 8 8
t =1×3持续时间数组01:14:04 01:14:04 01:14:04
当您同时请求年份和月份时,分裂
将大于12的月值转到年值。
输入参数
str
-输入文本
字符串数组|字符向量|单元格数组的字符向量
输入文本,指定为字符串数组、字符向量或字符向量的单元格数组。
数据类型:字符串
|字符
|细胞
分隔符
—分隔子字符串
字符串数组|字符向量|单元格数组的字符向量
昏暗的
-分割字符串的尺寸
正整数
分隔字符串的维度,指定为正整数。如果昏暗的
,则默认为最后一个数组维度,其大小不等于1
.
t
-输入日历持续时间
calendarDuration
数组
输入日历持续时间,指定为calendarDuration
数组中。
数据类型:calendarDuration
单位
—日期和时间单位
字符向量|单元数组的字符向量
日期和时间单位,指定为字符向量或字符向量的单元格数组。指定单位
只有当第一个输入参数是calendarDuration
数组,t
.
字符向量可以是表中的一个或多个值:
价值 | 分裂t 成单位为… |
---|---|
“年” |
年 |
“季度” |
季度 |
“月” |
个月 |
“周” |
周 |
“天” |
天 |
“时间” |
时间,格式为小时:分:秒 |
必须指定从大到小的日期和时间单位。例如,{“年”、“月”}
是有效的,但是{‘月’,‘年’}
不是。
例子:分割(t,{“年”、“月”,“天”})
数据类型:字符
|细胞
输出参数
newStr
-从原始数组中分离出子字符串
字符串数组|单元格数组的字符向量
从原始数组中分离出来的子字符串,作为字符串数组或字符向量的单元格数组返回。如果输入数组str
是字符串数组,那么是newStr
.否则,newStr
是字符向量的单元格数组。
数据类型:字符串
匹配
-标识的分隔符
字符串数组|单元格数组的字符向量
标识的分隔符,作为字符串数组或字符向量的单元格数组返回。如果输入数组str
是字符串数组,那么是匹配
.否则,匹配
是字符向量的单元格数组。
匹配
总是比输出少包含一个元素newStr
包含。
数据类型:字符串
X1, X2,…
-输出数字和持续时间
值
数组
输出数字和持续时间
值,作为数组返回。分裂
返回数值数组中的年、月和日值以及中的时间值持续时间
数组。
数据类型:双
|持续时间
扩展功能
高大的数组
使用行数超过内存容量的数组进行计算。
在R2014b中引入
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入命令来运行该命令。Web浏览器不支持MATLAB命令。金宝app
您也可以从以下列表中选择网站:
如何获得最佳的网站性能
选择中国网站(中文或英文)以获得最佳的网站表现。其他MathWorks国家网站没有针对从您的位置访问进行优化。