↑ 收起筛选 ↑
mAtlAB字符串处理函数
2020-07-29

function main()clear;clc;close allx=-pi:0.1:pi;str=input('请输入函数表达式:\n','s');y=eval(str);plot(x,y,'g-')%例如:你在提示“请输入函数表达式”时输入sin(x),就能得到一个结果

你第一句话的那样,就是吧\n写到字符串里了.比如一个人像打印\n这两个符号也写到字符串他要做的就是你这样的.'\n'是换行符,仅仅在作为fprintf的参数的时候.你可以最后加换行符,改成下边这样:a='aaaaaa'; for i=1:size(a,2) fprintf(a(i)); pause(0.3); end fprintf('\n');

matlab中有那些操作字符串函数 除了下面的几个函数 eval(string) 作为一个MATLAB命令求字符串的值 eval(try,catch) blanks(n) 返回一个n个零或空格的字符串 deblank 去掉字符串中后拖的空格 feval 求由字符串给定的函数值 findstr 从一个字符串内找出字符串 isletter 字母存在时返回真值 isspace 空格字符存在时返回真值 isstr 输入是一个字符串,返回真值 lasterr 返回上一个所产生MATLAB错误的字符串 strcmp 字符串相同,返回真值 strrep 用一个字符串替换另一个字符串 strtok 在一个字符串里找出第一个标记

字符串转换为变量名 sum(eval(filname))%求各列的和sum(sum(eval(filname)))%求所有元素的和 s=sum(eval(filname));s=s(1);%求第1列的和

用str2func把字符串转换为函数句柄:>> p='sin';>> p=str2func(p);>> x=1:10;>> all(p(x)==sin(x))ans = 1只需要第2句,其余部分为示例.

>> x=1:10; str='sum(x)'; eval(str); ans = 55

5.字符串比较函数strcmp格式:strcmp(字符数组名1,字符数组名2)功能:按照ASCII码顺序比较两个数组中的字符串,并由函数返回值返回比较结果

matlab中的字符串就是个数组,只需要将两个数组合并成一个数组就可以了.举例如下.>> a='a'a =a>> b='b'b =b>> c=[a b]c =ab>>

strcat(result, a,'set') %如果a是字符串strcat(result,num2str(a),'set')%如果a是数字

其实不用这么麻烦寻找匹配,matlab自带了字符串查找函数strfind(str,patten),来查找str中是否有pattern,返回出现位置,没有出现返回空数组.具体使用方式如下:如果有一致的,则返回匹配字符串的起始位置,若没有一致,则返回空.执行结果如下:

延伸阅读: