字 符 串 转 换 |
| ||||
abs |
字符串到ASCII转换 |
| |||
dec2hex |
十进制数到十六进制字符串转换 |
| |||
fprintf |
把格式化的文本写到文件中或显示屏上 |
| |||
hex2dec |
十六进制字符串转换成十进制数 |
| |||
hex2num |
十六进制字符串转换成IEEE浮点数 |
| |||
int2str |
整数转换成字符串 |
| |||
lower |
字符串转换成小写 |
| |||
num2str |
数字转换成字符串 |
| |||
setstr |
ASCII转换成字符串 |
| |||
sprintf |
用格式控制,数字转换成字符串 |
| |||
sscanf |
用格式控制,字符串转换成数字 |
| |||
str2mat |
字符串转换成一个文本矩阵 |
| |||
str2num |
字符串转换成数字 |
| |||
upper |
字符串转换成大写 |
| |||
eval(string) |
作为一个MATLAB命令求字符串的值 |
| |||
blanks(n) |
返回一个n个零或空格的字符串 |
| |||
deblank |
去掉字符串中后拖的空格 |
| |||
feval |
求由字符串给定的函数值 |
| |||
findstr |
从一个字符串内找出字符串 |
| |||
isletter |
字母存在时返回真值 |
| |||
isspace |
空格字符存在时返回真值 |
| |||
isstr |
输入是一个字符串,返回真值 |
| |||
lasterr |
返回上一个所产生MATLAB错误的字符串 |
| |||
strcmp |
字符串相同,返回真值 |
| |||
strrep |
用一个字符串替换另一个字符串 |
| |||
strtok |
在一个字符串里找出第一个标记 |
| |||
l 这里函数num2str用来把数值转换成字符串,字符串连接用来把所转换的数嵌人到一个字符串句子中。按类似方式,int2str把整数转换成字符串。无论是num2str还是int2str都调用函数sprintf,它用类似C语言语法把数值转换成字符串。请注意函数str2num不能接受用户定义的变量,也不能执行转换过程的算术运算。
?s='he is a student';
?a=abs(s)
a =
Columns 1 through 12
104 101 32 105 115 32 97 32 115 116 117 100
Columns 13 through 15
101 110 116
?num2str(a)
ans =
104 101 32 105 115 32 97 32 115 116 117 100 101 110 116
?int2str(s)
ans =
104 101 32 105 115 32 97 32 115 116 117 100 101 110 116
l 函数disp允许不打印它的变量名而显示一个字符串。
?disp(s)
he is a student
l 函数find用来找出小写字符的下标值,然后,从小写元素中只减去小写与大写之差,最后,用setstr把求得的数组转换成它的字符串表示。
?find(s>'m')
ans =
5 9 10 11 14 15
l 函数input能输入一个字符串: x=input('Enter anything > ',' s ') 。这里,在函数input里的附加参量’s’告诉MATLAB,作为一个字符串,只要把用户输入传送到输出变量,就不需要引号。事实上,如果将引号包括进去,它们就变成返回字符串的一部分。
l 无论fprintf还是sprintf以同样方式处理输入参量,但fprintf把输出送到显示屏或文件中,而sprintf把输出返回到一个字符串中。
l 函数feval与eval类似,但在用法上有更多的限制。feval('fun ',x)求由字符串' fun '给定的函数值,其输入参量是变量x。即feval(' fun ',x)等价于求fun(x)值。函数eval,feval的基本用途限在用户创建的函数内。一般地,feval可求出有大量输入参量的函数值,例如,feval(' fun ', x, y, z) 等价于求fun(x, y, z)值。
?feval('sin',s)
ans =
Columns 1 through 7
-0.3216 0.4520 0.5514 -0.9705 0.9454 0.5514 0.3796
Columns 8 through 14
0.5514 0.9454 0.2367 -0.6897 -0.5064 0.4520 -0.0442
Column 15
0.2367
?eval('sin(s)')
ans =
Columns 1 through 7
-0.3216 0.4520 0.5514 -0.9705 0.9454 0.5514 0.3796
Columns 8 through 14
0.5514 0.9454 0.2367 -0.6897 -0.5064 0.4520 -0.0442
Column 15
0.2367
l 字符串的比较:strcmp(s1,s2)
?strcmp(s,'he is a student')
ans =
1
l 检查字符串
?isletter(s)
ans =
Columns 1 through 12
1 1 0 1 1 0 1 0 1 1 1 1
Columns 13 through 15
1 1 1
l 查找字符串
?findstr(s,'a')
ans =
7
l 大小写的变换
?upper(s)
ans =
HE IS A STUDENT?
?lower('HE IS A STUDENT')
ans =
he is a student
出处:http://cs.nju.edu.cn/yangxc/dcc2003.files/matlab/matlab/5_2.htm