Day15_0.1基础学习MATLAB学习小技巧总结(15)——字符矩阵

利用空闲时间把碎片化的MATLAB知识重新系统的学习一遍,为了在这个过程中加深印象,也为了能够有所足迹,我会把自己的学习总结发在专栏中,以便学习交流。

素材来源"数学建模清风"

特此说明:本博客的内容只在于总结在使用matlab中的一些小技巧,并非教程,若想系统的学习MATLAB,也可以移步去链接中的视频,观看学习。也欢迎各位在留言区补充,纠错,讨论。

原素材和学习视频地址:MATLAB教程新手入门篇(上部分)(数学建模清风主讲,适合零基础同学观看)_哔哩哔哩_bilibili​编辑https://www.bilibili.com/video/BV1dN4y1Q7Kt/?spm_id_from=333.337.search-card.all.click&vd_source=c06380c48bd362b3f90af762beebf543

字符矩阵

字符向量的行数或者列数为1,字符向量就相当于特殊的字符矩阵。若想在同一个变量中表示多段文字,那么就可以使用字符矩阵

例如:

Matlab 复制代码
A = ['H','E','L','L','o';
     'W',''R,'o','L','D']

%%也可以写成
A=['HELLO';
   'WROLD'] 

这两种写法相同仅限于两个字符的维度相同时使用,实质上就是拼接了两个向量。

错误示范:

如果两个向量的维度不同,可以手动添加空格去补足两个向量的维度,但是手动添加的效率太低,这个时候可以借助char函数自动拼接。

关于char函数的介绍,我在之前的文章中有过详细的介绍,这里不多赘述。感兴趣可以翻看我之前的文章。

Day13_0.1基础学习MATLAB学习小技巧总结(13)------文本数据处理入门-CSDN博客https://blog.csdn.net/qq_47248729/article/details/141801218?spm=1001.2014.3001.5501接下来介绍三个用来删除字符向量开头或者末尾的空白字符的函数:

(1)deblank、(2)strtrim、(3)strip

三者之间的区别:

1、deblank函数只能用来删除字符向量末尾的空白字符,不会删除开头的空白字符

2、strtrim函数会同时删除字符向量开头和末尾的空白字符

3、strip函数则提供了更多的选项,例如可以指定删除那一侧的空白字符(左侧'left'、右侧'right'、双侧'both'),甚至还能指定自己要删除的字符,不一定是空白字符

例如:

Matlab 复制代码
A = [' 吃饭了 吗 ',newline,'还没吃  呢   ']
deblank(A)%去除末尾的空白字符
strtrim(A)%去除开头和末尾的空白字符
strip(A,'left')%去除左侧的空白字符
strip(A,'right')%去除右侧的空白字符
strip(A,'both')%去除双侧的空白字符

(4)strjust函数

这个函数是用于调整字符数组中文本对齐方式,它通过调整每一行字符向量前后空格的位置来实现左对齐(left)、右对齐(right,默认值)和居中对齐三种格式

例如:

Matlab 复制代码
A = char(' 吃饭了 吗 ','还没吃  呢   ','那就别吃了')
strjust(A,'left')%左对齐
strjust(A,'right')%右对齐
strjust(A,'center')%居中对齐

用这个函数可以将99乘法表居中展示:

Matlab 复制代码
A = '';
for i = 1:9
    tmp = '';
    for j = 1:i
        tmp = [tmp,num2str(j),'x',num2str(i)...
            '=',num2str(i*j),'10'];
    end
    A = char(A,tmp);
end
A(1,:) = [];
AA = strjust(A,'center');
disp(AA)

只用将AA = strjust(A,'center');这行代码中的后缀替换成"left"、"right",就可以改成显示为向左对齐和向右对齐。

相关推荐
feifeigo1233 天前
matlab画图工具
开发语言·matlab
西岸行者3 天前
学习笔记:SKILLS 能帮助更好的vibe coding
笔记·学习
悠哉悠哉愿意3 天前
【单片机学习笔记】串口、超声波、NE555的同时使用
笔记·单片机·学习
别催小唐敲代码3 天前
嵌入式学习路线
学习
Gofarlic_oms13 天前
避免Kisssoft高级分析模块过度采购的科学评估方法
大数据·linux·运维·人工智能·matlab
山楂树の3 天前
【高等数学】 计算对弧长的曲线积分
数学建模
rit84324993 天前
全变分正则化图像去噪的MATLAB实现
开发语言·matlab
Evand J3 天前
通过matlab实现机器学习的小项目示例(鸢尾花分类)
机器学习·支持向量机·matlab
bu_shuo3 天前
MATLAB命令行窗口中的字体放大操作
matlab·命令行
micro_xx3 天前
Matlab 有限元分析三维悬臂梁变形
前端·数据库·matlab