Matlab自学笔记二十五:字符串的拆分和连接、换行符的使用

1.连接和拆分

字符串的连接和拆分涉及到四个函数:strjoin和join、strsplit和split,用法的区别在下面程序示例中说明,字符串拆分时,若不指定分隔符,默认在空白字符处拆分,空白字符等效于集合 {' ','\f','\n','\r','\t','\v'} 中的任何转义字符,程序示例:

clear,clc

names = ["Steve Jobs"

         "Albert Einstein"

         "艾萨克 es牛顿"]

%连接、拆分

names1 = split(names) %在空白字符处拆分字符串

join(names1) %添加空格按行连接

names2 = split(names,'s') %指定分隔符,所有元素都必须包含相同数目的 分隔符

join(names2,'+')

%names2 = split(names,{' ','s'}) %给定两个分隔符,用元胞数组表达,所有元素都必须包含相同数目的 分隔符

%join(names2,{'+','-'})

join(names) %若是输入是向量,默认添加空格连接成一个文本块

strjoin(names) %默认添加空格连接文本成一个文本块,输入可以是字符向量元胞数组或字符串数组

strjoin(names,',')

%strjoin(names,{' 不是 ',' 和 '})

2.strjoinjoin区别

在处理向量时,合并结果相同,处理数组时,strjoin仍然返回单个字符串,join返回相应的数组结果,程序示例如下:

strjoin(names1)

join(names1)

3.strsplitsplit区别

strsplit和split区别是,strsplit仅用于字符向量或字符串标量,split还可用于字符串数组或元胞数组,程序示例如下:

strsplit("Steve Jobs") %在空白字符处拆分,空白字符等效于集合 {' ','\f','\n','\r','\t','\v'} 中的任何转义序列

strsplit("Steve Jobs","o") %在指定字符处拆分

strsplit("E:\matlab\work",'\') %在路径字符串中的应用

strsplit(names)

4.换行符的处理

这里所讲的换行符是指回车,按照换行符拆分使用函数splitlines,一般的,换行符的转义字符输入是\n,但有时作为字符输入后,并不进行转义识别,这就用到了格式化函数compose,另外,换行符还可以使用函数newlines定义,直接看程序示例和注释:

temp="aaa

bbb" %字符串输入时无法直接添加换行符(回车)

temp="aaa\nbbb" %换行符用转义字符\n输入,但不会转转义,字符串会原样输出

splitlines(temp) %在换行符处拆分字符串,不成功,没有换行符

temp1=compose(temp) %compose:将数据转换为格式化的字符串数组

splitlines(temp1) %在换行符处拆分字符串

newline %换行符

temp2=["aaa" newline "bbbb"]

splitlines(temp2)

temp2=['aaa' newline 'bbbb'] %仅适用于字符向量,在换行符处拆分成元胞数组

splitlines(temp2)

相关视频

36.0 Matlab GUI九个经典案例详解和演示

1.31/Matlab缺失字符串的创建 转换 剔除 应用

1.30/Matlab字符串型创建/比较/索引/运算/这是一个神奇的数据类型,不信你学学看

47.1 Matlab遗传算法概念、流程和编程案例

End

你可能感兴趣的:(matlab,笔记,数据结构)