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",就可以改成显示为向左对齐和向右对齐。

相关推荐
曹勖之37 分钟前
simulink有无现成模块可以实现将三个分开的输入合并为一个[1*3]的行向量输出?
matlab
Moonnnn.2 小时前
【单片机期末】串行口循环缓冲区发送
笔记·单片机·嵌入式硬件·学习
viperrrrrrrrrr73 小时前
大数据学习(131)-Hive数据分析函数总结
大数据·hive·学习
数模竞赛Paid answer3 小时前
数学建模-嘉陵江铊污染事件解题全过程文档及程序
数学建模·数据分析
fen_fen3 小时前
学习笔记(26):线性代数-张量的降维求和,简单示例
笔记·学习·算法
老歌老听老掉牙4 小时前
使用 SymPy 进行向量和矩阵的高级操作
python·线性代数·算法·矩阵·sympy
布伦鸽5 小时前
C# WPF 左右布局实现学习笔记(1)
笔记·学习·c#·wpf
sz66cm6 小时前
LeetCode刷题 -- 542. 01矩阵 基于 DFS 更新优化的多源最短路径实现
leetcode·矩阵·深度优先
陳麦冬6 小时前
深入理解指针(二)
c语言·学习
机器学习之心8 小时前
Transformer-BiGRU多变量时序预测(Matlab完整源码和数据)
深度学习·matlab·transformer·bigru