您的位置:首页 > 编程语言 > MATLAB

Matlab字符串函数

2015-10-21 15:03 176 查看
字  符  串  转  换
 

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        函数fevaleval类似,但在用法上有更多的限制。feval('fun ',x)求由字符串' fun '给定的函数值,其输入参量是变量x。即feval('
fun ',x)
等价于求fun(x)值。函数evalfeval的基本用途限在用户创建的函数内。一般地,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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息