✅作者简介:热爱科研的算法开发者,Python、Matlab项目可交流、沟通、学习。
????个人主页:算法工程师的学习日志
在一个case里面需要大量格式化生成字符串,故整理了一下这方面的内容
常见的有三种方法:向量拼接、strcat函数和sprintf函数
1、向量拼接
在matlab中字符串本质上也是一个向量,可以通过矩阵运算来实现字符串的拼接,这里随便输入两个字符串a1和b1,用矩阵形式进行拼接:
结果为:
可以按要求更改a1 b1的顺序,如果要a1和b1分开的话,可在a1最后加个空格或者在b1前加空格,也可用此方法生成路径,比如:
对于处理批量数据且文件名有公共部分时,此方法更为便利。
2、strcat函数
strcat方法用于水平串联字符串。
s = strcat(s1,...,sN) 水平串联 s1,...,sN。每个输入参数都可以是字符数组、字符向量元胞数组或字符串数组。
- 如果任一输入是字符串数组,则结果是字符串数组。
- 如果任一输入是元胞数组,并且没有输入是字符串数组,则结果是字符向量元胞数组。
- 如果所有输入都是字符数组,则结果是字符数组。
对于字符数组输入,strcat 会删除尾随的 ASCII 空白字符:空格、制表符、垂直制表符、换行符、回车和换页符。对于元胞数组和字符串数组输入,strcat 不删除尾随空白。
3、sprintf函数拼接
可以按要求更改a1、b1的顺序,如果要a1和b1分开的话,可在c1中两个%s之间加空格
注:
- %s 代表输出字符串;
- %c 代表输出字符串;
- %d 代表输出整型:%5d 就是说按照长度为5的整型输出,比如100,输出就是" 100"," "代表空格;
- %f 就是输出小数:%8.4f 就是小数点后保留4位,输出总长度为8,比如3.14159,输出后就是" 3.1415"(前面三个空格);
字符串拼接应用场景
批量保持figure的图片到指定路径
- ‘G:/ ’ 是保存路径 ,
- ‘test’ 是文件名前缀,
- gcf代表保存当前图像,
- num2str(i)表示文件名数字例如:i=1时,文件名为test1,