MATLABppt课件_第六章_字符串、单元数组和结构体.ppt
《MATLABppt课件_第六章_字符串、单元数组和结构体.ppt》由会员分享,可在线阅读,更多相关《MATLABppt课件_第六章_字符串、单元数组和结构体.ppt(29页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、MATLAB R2007基础教程基础教程 清华大学出版社清华大学出版社第第6章字符串、单元数组和结构体章字符串、单元数组和结构体 MATLAB R2007基础教程基础教程 清华大学出版社清华大学出版社教学目标教学重点教学内容1/15/20231MATLAB R2007基础教程基础教程 清华大学出版社清华大学出版社教学目标l掌握字符串的生成及操作掌握字符串的生成及操作l掌握单元数组的生成及操作掌握单元数组的生成及操作l掌握结构体的生成及操作掌握结构体的生成及操作1/15/20232MATLAB R2007基础教程基础教程 清华大学出版社清华大学出版社教学重点l字符串字符串l单元数组单元数组l结构
2、体结构体1/15/20233MATLAB R2007基础教程基础教程 清华大学出版社清华大学出版社教学内容l字符串字符串l单元数组单元数组l结构体结构体1/15/20234MATLAB R2007基础教程基础教程 清华大学出版社清华大学出版社字符串的生成(字符串的生成(1/2)l字符串的生成字符串的生成 lMATLAB 中的字符串为中的字符串为 ASCII 值的数值数值的数值数组,作为字符串表达式进行表示。在组,作为字符串表达式进行表示。在 MATLAB 中,生成字符串的方法为中,生成字符串的方法为 stringname=the content of the string。1/15/20235
3、MATLAB R2007基础教程基础教程 清华大学出版社清华大学出版社字符串的生成(字符串的生成(2/2)l字符串是一个字符串是一个 ASCII 码的字符数组,因此,码的字符数组,因此,与普通数组一样,字符串也可以形成矩阵与普通数组一样,字符串也可以形成矩阵(表现为一个字符串有多行)。但是,这(表现为一个字符串有多行)。但是,这些行必须有相同数目的列数。些行必须有相同数目的列数。l另外,使用另外,使用 char 函数可以创建长度不一致函数可以创建长度不一致的字符串矩阵。的字符串矩阵。char 函数自动将所有字符函数自动将所有字符串的长度设置为输入字符串中长度的最大串的长度设置为输入字符串中长度
4、的最大值。值。1/15/20236MATLAB R2007基础教程基础教程 清华大学出版社清华大学出版社字符串的操作字符串的操作 l字符串的显示字符串的显示字符串的显示有两种方式:直接显示和利字符串的显示有两种方式:直接显示和利用用 disp 函数进行显示。函数进行显示。l字符串的执行字符串的执行在在 MATLAB 中可以用函数中可以用函数 eval 来执行字来执行字符串。符串。1/15/20237MATLAB R2007基础教程基础教程 清华大学出版社清华大学出版社字符串的运算字符串的运算l字符串的运算主要包括:字符串的运算主要包括:1.判断字符串是否相等判断字符串是否相等2.通过字符串运算
5、来比较字符串中的字符通过字符串运算来比较字符串中的字符3.进行字符分类、查找与替换进行字符分类、查找与替换4.字符串与数值数组之间的相互转换字符串与数值数组之间的相互转换 函数名函数用途函数名函数用途strcat横向连接字符串strvcat纵向连接字符串strcmp字符串比较strncmp比较字符串的前n 个字符findstr字符串查找strjust字符串对齐strmatch字符串匹配strrep字符串查找与替换strtok选择字符串中的部分blanks创建由空格组成的字符串deblank删除字符串结尾的空格ischar判断变量是否为字符串iscellstr判断字符串单元数组isletter判
6、断数组是否由字母组成isspace判断是否空格stringsMATLAB 字符串句柄1/15/20238MATLAB R2007基础教程基础教程 清华大学出版社清华大学出版社字符串的比较(字符串的比较(1/3)l字符串的比较主要为比较两个字符串是否相同,字符串的比较主要为比较两个字符串是否相同,字符串中的子串是否相同和字符串中的个别字符字符串中的子串是否相同和字符串中的个别字符是否相同。用于比较字符串的函数主要是是否相同。用于比较字符串的函数主要是 strcmp 和和 strncmp。strcmp:用于比较两个字符串是否相同。用法为:用于比较两个字符串是否相同。用法为 strcmp(str1,
7、str2),当两个字符串相同时返回,当两个字符串相同时返回1,否则,否则返回返回0。当所比较的两个字符串是单元字符数组时,返。当所比较的两个字符串是单元字符数组时,返回值为一个列向量,元素为相应行比较的结果。回值为一个列向量,元素为相应行比较的结果。strncmp:用于比较两个字符串的前面几个字符是否相:用于比较两个字符串的前面几个字符是否相同。用法为同。用法为 strncmp(str1,str2,n),当字符串的前当字符串的前 n 个字符相同时返回个字符相同时返回1,否则返回,否则返回 0。当所比较的两个字。当所比较的两个字符串时单元数组时,返回值为列向量,元素为相应行符串时单元数组时,返回
8、值为列向量,元素为相应行比较的结果。比较的结果。1/15/20239MATLAB R2007基础教程基础教程 清华大学出版社清华大学出版社字符串的比较(字符串的比较(2/3)l除了利用上面两个函数进行比较之外,还可以通除了利用上面两个函数进行比较之外,还可以通过简单运算比较两个字符串。当两个字符串拥有过简单运算比较两个字符串。当两个字符串拥有相同的维数时,可以利用相同的维数时,可以利用 MATLAB 运算法则,运算法则,对字符数组进行比较。字符数组的比较与数值数对字符数组进行比较。字符数组的比较与数值数组的比较基本相同,不同之处在于字符数组比较组的比较基本相同,不同之处在于字符数组比较时进行比
9、较的是字符的时进行比较的是字符的 ASCII 码值。进行比较返码值。进行比较返回的结果为一个数值向量,元素为对应字符比较回的结果为一个数值向量,元素为对应字符比较的结果。需要注意的是在利用这些运算比较字符的结果。需要注意的是在利用这些运算比较字符串时,相互比较的两个字符串必须有相同数目的串时,相互比较的两个字符串必须有相同数目的元素。元素。符号符号意义英文简写=等于eq=不等于ne大于gt=大于等于ge1/15/202310MATLAB R2007基础教程基础教程 清华大学出版社清华大学出版社字符串的比较(字符串的比较(3/3)l除上面介绍的两个字符串之间的比较之外,除上面介绍的两个字符串之间
10、的比较之外,MATLAB 还可以判断字符串中的字符是否为空格还可以判断字符串中的字符是否为空格字符或者字母。实现这两个功能的函数分别为字符或者字母。实现这两个功能的函数分别为 isspace 和和isletter。下面分别介绍这两个函数。下面分别介绍这两个函数。isspace:用法为:用法为 isspace(str),判断字符串,判断字符串 str 中的中的字符是否为空格,是空格字符则返回字符是否为空格,是空格字符则返回1,否则返回,否则返回0。isletter:用法为:用法为 isletter(str),判断字符串,判断字符串 str 中的字中的字符是否为字母,是字母则返回符是否为字母,是字
11、母则返回1,否则返回,否则返回0。1/15/202311MATLAB R2007基础教程基础教程 清华大学出版社清华大学出版社字符串的查找和替换字符串的查找和替换l查找与替换是字符串操作中的一项重要内容。用查找与替换是字符串操作中的一项重要内容。用于查找的函数主要有于查找的函数主要有 findstr,strmatch,strrep,strtok 等。下面一一介绍这些函数。等。下面一一介绍这些函数。findstr:用于在一个字符串中查找子字符串,返回子:用于在一个字符串中查找子字符串,返回子字符串出现的起始位置。用法为字符串出现的起始位置。用法为findstr(str1,str2),执,执行时系
12、统首先判断两个字符串的长短,然后在长的字行时系统首先判断两个字符串的长短,然后在长的字符串中检索短的子字符串。符串中检索短的子字符串。strrep:查找字符串中的子字符串并将其替换为另一个:查找字符串中的子字符串并将其替换为另一个子字符串。用法为子字符串。用法为 str=strrep(str1,str2,str3),将,将 str1 中的所有子字符串中的所有子字符串 str2 替换为替换为 str3。1/15/202312MATLAB R2007基础教程基础教程 清华大学出版社清华大学出版社strmatch:在字符数组的每一行中查找是否存:在字符数组的每一行中查找是否存在待查找的字符串,存在则
13、返回在待查找的字符串,存在则返回1,否则返回,否则返回0。用法为用法为strmatch(str,STRS),查找,查找 str 中以中以 STRS 开头的字符串。另外可以用开头的字符串。另外可以用strmatch(str,STRS,exact),查找精确包含,查找精确包含 STRS 的字符串。的字符串。strtok:该函数用于选取字符串中的一个部分。:该函数用于选取字符串中的一个部分。该函数的简单用法为该函数的简单用法为 strtok(str)。1/15/202313MATLAB R2007基础教程基础教程 清华大学出版社清华大学出版社字符串与数值之间的转化字符串与数值之间的转化 l一个字符串
14、是由单引号括起来的简单文本。一个字符串是由单引号括起来的简单文本。在字符串中的每个字符都是数组中的一个在字符串中的每个字符都是数组中的一个元素,这些数字是由元素,这些数字是由 ASCII 字符表示的。字符表示的。这些字符和整数之间可以相互转化。这些字符和整数之间可以相互转化。l首先,可以将字符串转化为数组。首先,可以将字符串转化为数组。1/15/202314MATLAB R2007基础教程基础教程 清华大学出版社清华大学出版社char 函数的用法函数的用法l char 函数的用法函数的用法Str=char(arr),该,该命令将包含正数的数组命令将包含正数的数组 arr 转化为数值数组转化为数
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLABppt 课件 第六 字符串 单元 数组 结构
限制150内