Matlab 实现字符串分割(split)
2017-08-29 22:19
1056 查看
可以借助正则表达式函数regexp的split模式。
一般语法:
S = regexp(str, char, 'split')
其中str是待分割的字符串,char是作为分隔符的字符(可以使用正则表达式),一般使用正则表达式。
分割出的结果存在S中。
例:去除首尾的多余空格:
str = deblank(str)
例1:设这几个字符串是以制表符分隔的,可以这样来做:
S = regexp(str, '\t', 'split')
例2:设这些字符串是以一个或多个空格分隔的,可以用正则表达式来描述:
S = regexp(str, '\s+', 'split')
(其中+表示匹配多个空格,正则表达式中加号相当于{1,},表示匹配的长度为1个或者更多个空格)
这样,S(1)=’Hello’,S(2)=’Nocturne’,S(3)=’Studio’。
注意,上面得到的结果S是一个cell型变量,它的每个元素比如S(1)仍然是cell型的,只能用来display,不能直接用来进行字符串操作(比如获取其中的某个字符),所以我们在使用需要执行一次:
s1 = char(S(1))
这样的s1才是一个真正的字符串,可以进行后续的操作。
一般语法:
S = regexp(str, char, 'split')
其中str是待分割的字符串,char是作为分隔符的字符(可以使用正则表达式),一般使用正则表达式。
分割出的结果存在S中。
例:去除首尾的多余空格:
str = deblank(str)
例1:设这几个字符串是以制表符分隔的,可以这样来做:
S = regexp(str, '\t', 'split')
例2:设这些字符串是以一个或多个空格分隔的,可以用正则表达式来描述:
S = regexp(str, '\s+', 'split')
(其中+表示匹配多个空格,正则表达式中加号相当于{1,},表示匹配的长度为1个或者更多个空格)
这样,S(1)=’Hello’,S(2)=’Nocturne’,S(3)=’Studio’。
注意,上面得到的结果S是一个cell型变量,它的每个元素比如S(1)仍然是cell型的,只能用来display,不能直接用来进行字符串操作(比如获取其中的某个字符),所以我们在使用需要执行一次:
s1 = char(S(1))
这样的s1才是一个真正的字符串,可以进行后续的操作。
相关文章推荐
- 用Matlab实现字符串分割(split)
- 用Matlab实现字符串分割(split)
- 用Matlab实现字符串分割(split)
- 用Matlab实现字符串分割(split)
- C/C++实现split分割字符串
- C++字符串分割函数split实现
- Matlab---------字符串分割(split)
- Matlab字符串分割(split)
- sql用特定字符分割字符串,实现split功能
- JS实现Split分割字符串同时允许被分割出的字符串中存在分割符号
- MySQL里实现类似SPLIT的分割字符串的函数
- C#实现字符串按多个字符采用Split方法分割
- 在C++中实现字符串分割--split
- SQLServer实现split分割字符串到列
- 不用Split方法实现分割字符串
- C++:实现split分割字符串
- C++ 字符串分割方法 实现split
- 用MATLAB实现字符串分割
- mysql函数split功能实现,mysql分割字符串split