MATLAB中字符数组与字符串数组的区别
在MATLAB中,字符数组和字符串数组都⽤于存储⽂本数据;但两者有很⼤的区别:
⼀、字符数组
字符数组是⼀个字符序列,类似于数值数组是⼀个数字序列。
常见的情况有:
1. 直接将⽂本存储为字符向量
char_array ='Hello, world';
输出结果为:
数组转换成字符串char_array =
'Hello, world'
注意:此处为单引号。
2. 使⽤num2str转换的数字数组
arr =[123];
char_array =num2str(arr);
输出:
char_array =
'1  2  3'
注意:此处为单引号。
⼆、字符串数组
字符串数组是⼀个⽂本容器,提供了⼀组⽤于⽂本处理的函数。⾃MATLAB 2017a开始,可⽤双引号创建字符串。字符串数组的每个元素存储⼀个字符序列,此序列长度可以不同。若字符串数组只有⼀个元素,则成为字符串标量。
1. 创建字符串数组
str ="Hello, world"
输出:
str =
"Hello, world"
注意:此处为双引号。
2. 使⽤string函数将数组转换为字符串数组
arr =[123];
str =string(arr);
输出
str =
1×3 string 数组
"1""2""3"
注意:⽣成了⼀个1×3字符串数组,其中每个元素⽣成了⼀个字符串。
举例:
将数字数组转换为字符串
>> arr =[123]
arr =
123
>> char_array =num2str(arr)
char_array =
'1  2  3'
>> str =string(char_array)
str =
"1  2  3"
其中:arr为数字数组,num2str函数将arr转换为字符数组char_array,string函数将字符数组char_array转换为字符串数组str。
由于str仅包含⼀个元素,故str为字符串标量。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。