一般使用数组存储长度一致的字符串时,常用这种形式:
str=[];
str=[str;str1];
但对于长度不一的字符串来讲,这样就不行了。
可以使用这种方式:
str=[];
str=strvcat(str,str1);
这样str的结构就是每一行都是一个str1。strvcat会将每个数组元素的长度设为数组元素长度最大值,不够长的在结尾补空格。
例如,存储a,ab,abc,abcd,则实际存储为
str=['a ';
'ab ';
'abc ';
'abcd'']
调用时,这样:
getstr=str(i,:);
这样得到一整条数据,使用strtip函数去除空格(https://ww2.mathworks.cn/help/matlab/ref/strip.html)
newStr = strip(str) 从 str 中每个字符串的开头和末尾删除所有连续空白字符,并以 newStr 形式返回结果。
newStr = strip(str,side) 从 side 指定的一侧删除所有连续空白字符。side 参数可以是 'left'、'right' 或 'both'。
newStr = strip(___,stripCharacter) 去除 stripCharacter 指定的字符而不是空白字符。您可以使用上述语法中的任何输入参数。
如果想去除字符串中所有字符(不限于开头结尾),可以这样
str1(find(isspace(str1))) = [] %去除所有空格,str1为一个字符串