Matlab字符串及其运算,字符串函数及二维字符串
2017-08-02 20:47
330 查看
ASCII码表的两个重点规律
①数字0~9比字母要小。如2<e
②同个字母的大写字母要比小写字母小(大写字母在前小写字母在后)。如A<a
>> str1='I am a man' //定义一个字符串
str1 =
I am a man
>> 1:2:10
ans =
1 3 5 7 9
>> abs(str1) //输出字符串对应的ASCII码
ans =
73 32 97 109 32 97 32 109 97 110
>> double('a') //输出字符对应的ASCII码
ans =
97
>> char(65) //输出ASCII码对应的字符
ans =
A
>> num2str(65) //输出数字65对应的字符6和5
ans =
65
>> str2num('97') //输出字符9和7对应的数字97
ans =
97
>> str2=['I' 'a' 'm' 'a' 'b' 'o' 'y'] //用数组定义字符串
str2 =
Iamaboy
>> str2=['I' ' a' 'm' 'a' 'b' 'o' 'y'] //注意空格的使用
str2 =
I amaboy
>> str3='I'm a boy' // ' ' ' 不会把 ‘定义进去
??? str3='I'm a boy'
|
Error: Missing MATLAB operator.
>> str3='I''m a boy' // ‘ ’‘ ’ 这样才会输出 ‘(一个引号)
str3 =
I'm a boy
>> str4='' //定义一个空字符串
str4 =
''
>> 'A'+32 //输出大写字母对应的小写字母
ans =
97
>> char('A'+32) //输出大写字母对应的小写字母方法二
ans =
a
>> lower('A') //输出大写字母对应的小写字母方法三
ans =
a
>> upper('a') //输出小写字母对应的大写字母
ans =
A
>> str5=['a':'z'] //结合冒号表达式的字符串
str5 =
abcdefghijklmnopqrstuvwxyz
>> str1='I am a boy'
str1 =
I am a boy
>> str2='I am a girl'
str2 =
I am a girl
>> strcmp(str1,str2) //比较两个数组的第一个元素
ans =
0
>> strncmp(str1,str2,4) //比较两个数组的前四个元素,相同输出1,不同输出0
ans =
1
>> strncmp(str1,str2,8)
ans =
0
>> findstr(str1,'a') //找出字符a在数组中的位置
ans =
3 6
>> findstr(str1,'amry') //找处字符串amry在数组中的位置
ans =
[]
>>findstr(str1,'am')
ans=
3
>> [str1;str'2] //用括号合并两个字符串 必须保证行与行维数相等,才能按矩阵的形式拼接,否则报错
??? [str1;str‘2]
|
Error: Missing MATLAB operator.
>> strcat(str1,str2) //合并两个字符串方法二
ans =
I am a boyI am a girl
>> [str1,str2] //合并两个同行的字符串
ans =
I am a boyI am a girl
>> [str1;str2]
??? Error using ==> vertcat
All rows in the bracketed expression must have the same
number of columns.
// 同上,行与行维数必须相等,才能按矩阵的形式拼接,否则报错
>> strcat(str1,str2') //这个函数可以解决上面这个问题
ans =
I am a boyI
I am a boy
I am a boya
I am a boym
I am a boy
I am a boya
I am a boy
I am a boyg
I am a boyi
I am a boyr
I am a boyl
>> disp(str2)
I am a girl
>> disp(请输入数据')
请输入数据
>> ['I am a boy';'I am a girl’'] //行维数不同
??? error!
>> ['I am a boy ';'I am a girl'] //补空格就能解决这个问题
ans =
I am a boy
I am a girl
>> strvcat(str1,str2) //用strvcat可以以矩阵的形式合并字符串
ans =
I am a boy
I am a girl
>> str2mat(str1,str2) //用str2mat也可以用矩阵的形式合并字符串,和strvcat函数的区别看下面示例
ans =
I am a boy
I am a girl
>> str2mat(str1,'',str2)
ans =
I am a boy
I am a girl
>> strvcat(str1,'',str2) //忽略了空格的作用
ans =
I am a boy
I am a girl
ASCII码表的两个重点规律
①数字0~9比字母要小。如2<e
②同个字母的大写字母要比小写字母小(大写字母在前小写字母在后)。如A<a
>> str1='I am a man' //定义一个字符串
str1 =
I am a man
>> 1:2:10
ans =
1 3 5 7 9
>> abs(str1) //输出字符串对应的ASCII码
ans =
73 32 97 109 32 97 32 109 97 110
>> double('a') //输出字符对应的ASCII码
ans =
97
>> char(65) //输出ASCII码对应的字符
ans =
A
>> num2str(65) //输出数字65对应的字符6和5
ans =
65
>> str2num('97') //输出字符9和7对应的数字97
ans =
97
>> str2=['I' 'a' 'm' 'a' 'b' 'o' 'y'] //用数组定义字符串
str2 =
Iamaboy
>> str2=['I' ' a' 'm' 'a' 'b' 'o' 'y'] //注意空格的使用
str2 =
I amaboy
>> str3='I'm a boy' // ' ' ' 不会把 ‘定义进去
??? str3='I'm a boy'
|
Error: Missing MATLAB operator.
>> str3='I''m a boy' // ‘ ’‘ ’ 这样才会输出 ‘(一个引号)
str3 =
I'm a boy
>> str4='' //定义一个空字符串
str4 =
''
>> 'A'+32 //输出大写字母对应的小写字母
ans =
97
>> char('A'+32) //输出大写字母对应的小写字母方法二
ans =
a
>> lower('A') //输出大写字母对应的小写字母方法三
ans =
a
>> upper('a') //输出小写字母对应的大写字母
ans =
A
>> str5=['a':'z'] //结合冒号表达式的字符串
str5 =
abcdefghijklmnopqrstuvwxyz
>> str1='I am a boy'
str1 =
I am a boy
>> str2='I am a girl'
str2 =
I am a girl
>> strcmp(str1,str2) //比较两个数组的第一个元素
ans =
0
>> strncmp(str1,str2,4) //比较两个数组的前四个元素,相同输出1,不同输出0
ans =
1
>> strncmp(str1,str2,8)
ans =
0
>> findstr(str1,'a') //找出字符a在数组中的位置
ans =
3 6
>> findstr(str1,'amry') //找处字符串amry在数组中的位置
ans =
[]
>>findstr(str1,'am')
ans=
3
>> [str1;str'2] //用括号合并两个字符串 必须保证行与行维数相等,才能按矩阵的形式拼接,否则报错
??? [str1;str‘2]
|
Error: Missing MATLAB operator.
>> strcat(str1,str2) //合并两个字符串方法二
ans =
I am a boyI am a girl
>> [str1,str2] //合并两个同行的字符串
ans =
I am a boyI am a girl
>> [str1;str2]
??? Error using ==> vertcat
All rows in the bracketed expression must have the same
number of columns.
// 同上,行与行维数必须相等,才能按矩阵的形式拼接,否则报错
>> strcat(str1,str2') //这个函数可以解决上面这个问题
ans =
I am a boyI
I am a boy
I am a boya
I am a boym
I am a boy
I am a boya
I am a boy
I am a boyg
I am a boyi
I am a boyr
I am a boyl
>> disp(str2)
I am a girl
>> disp(请输入数据')
请输入数据
>> ['I am a boy';'I am a girl’'] //行维数不同
??? error!
>> ['I am a boy ';'I am a girl'] //补空格就能解决这个问题
ans =
I am a boy
I am a girl
>> strvcat(str1,str2) //用strvcat可以以矩阵的形式合并字符串
ans =
I am a boy
I am a girl
>> str2mat(str1,str2) //用str2mat也可以用矩阵的形式合并字符串,和strvcat函数的区别看下面示例
ans =
I am a boy
I am a girl
>> str2mat(str1,'',str2)
ans =
I am a boy
I am a girl
>> strvcat(str1,'',str2) //忽略了空格的作用
ans =
I am a boy
I am a girl
相关文章推荐
- Python 语言及其应用 Chapter_2_Note_1 熟悉字符串_字符串函数
- MATLAB 线性运算之减法运算及其应用
- MATLAB 线性运算之减法运算及其应用
- matlab笔记(2)----矩阵及其运算
- 向量及其运算(一):二维向量的基本运算
- matlab矩阵及其基本运算—特征值分解和奇异值分解
- matlab字符串及运算
- MATLAB程序设计教程(2)——MATLAB矩阵及其运算
- matlab矩阵及其基本运算—特征值分解和奇异值分解
- matlab矩阵及其基本运算—特征值分解和奇异值分解
- Chapter 2. MATLAB数据及其运算
- MATLAB中矩阵及其运算
- MATLAB学习(二)数值数组及其运算
- 求二维字符串数组里的元数个数
- Matlab图像的代数运算(图像的除法)
- HDU1003+数组最大子序列和及其扩展(循环数组,二维矩阵等)
- 第十五周项目1-哈希表及其运算的实现
- matlab数值积分方法求pi的近似值及其比较
- 第十五周项目1—哈希表及其运算的实现
- 汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果。对于一个给定的字符序列S,请你把其循环左移K位后的序列输出。例如,字符序列S=”abcXYZde