三.字符串、元胞和构架数组(matlab).ppt

三.字符串、元胞和构架数组(matlab).ppt

  1. 1、本文档共63页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
三.字符串、元胞、构架数组 字符串、元胞、构架数组 ◇字符串数组(Character String Array) 字符串数组的属性和标识 复杂字符串数组的创建 串转换函数和串操作函数 ◇元胞数组(Cell Array) 元胞数组的创建 元胞数组内容的显示 元胞数组内容的提取 元胞数组的扩充、收缩和重组 字符串、元胞、构架数组(续) ◇构架数组(Structure Array) 构架数组的创建 构架数组数据的获取和设置 构架数组域的获取 ◇数据类型归纳 例3.1 字符串入门(续) 小结: 在MATLAB中,字符串是作为字符数组来引入的; 一个字符串由多个字符组成,用单引号()来界定; 字符串是按行向量进行存储的,每一字符(包括空格)是以其ASCII码的形式存放。 3.1.1 字符串数组的属性和标识 1. 创建串数组 必须将待建字符放在“单引号对”中,当串中本身包含单引号时,每个单引号符用“连续的两个单引号”表示。 2. 串数组的大小 size指令可获得串数组的大小。串中的每一个字符,包括中英文字符、空格、标点都算一个元素。 3.1.1 字符串数组的属性和标识(续) 3. 串数组的元素标识 按从左至右的顺序依次用1、2、3、4… 等标识元素在串中的位置。 4. 串数组的ASCII码 指令abs和double可以显示串数组对应的ASCII码数值数组,指令char则可把ASCII码数值数组转换成串数组。 3.1.1 字符串数组的属性和标识(续) 5. 字符串ASCII码数组的操作 可以对ASCII码数组进行数值数组的各种运算。但其结果就变成一般数值向量的运算,而不再是字符串的运算。 注意: 必须在英文状态下输入“单引号对”。 将多个字符串变量直接用“,”连接,可构成一个较长的新字符串变量。 3.1.2 复杂字符串数组的创建 1.多行串数组的直接创建 必须保证各行等长,可以利用增减“空格”来 实现。 算例见下页所示: 3.1.2 复杂字符串数组的创建(续) 2. 利用串操作函数创建多行串数组 利用专门的str2mat、strvcat和char函数可以构造出字符串数组,而不必考虑每行的字符数是否相等,总是按最长的设置,不足的末尾用空格补齐。 3.1.2 复杂字符串数组的创建(续) 2.利用串操作函数创建多行串数组 算例见下页: 3.1.2 复杂字符串数组的创建(续) 3. 利用串转换函数产生数码字符串 常用的数组/字符串转换函数有int2str , num2str , mat2str 。 int2str:把整数数组转换成字符串数组,非整数将被四舍五入后再转换; num2str :把非整数数组转换成字符串数组,常用于图形中数据点的标识; mat2str:把数值数组转换成字符串数组。 3.1.3 串转换函数和串操作函数 1. 字符串转换函数(详见P76表3.1-1) 见下页表 2. 字符串操作函数(详见P77表3.1-2) length:用来计算字符串的长度(即组成字符的个数)。 char(s1,s2,…):将串s1,s2,…逐个写成行,形成多行数组。 class或ischar:用来判断某一个变量是否为字符串。class函数返回char则表示为字符串,而ischar函数返回1表示为字符串。 strcmp(s1,s2):比较字符串s1和s2是否相同。返回值如果为1则相同,为0则不同。 findstr(s1,s2):寻找在某个长字符串s1中的子字符串s2,返回其起始位置。 deblank(s ): 删除字符串尾部的空格。 2.字符串操作函数(续) 执行字符串 如果需要直接“执行”某一字符串,可以使用eval命令,效果就如同直接在MATLAB命令窗口内输入此命令。 算例见下页: 2.字符串操作函数(续) 显示字符串 字符串可以直接使用disp命令显示出来,即使后面加分号(;)也显示。 算例见下页所示: 3.2 元胞数组 特点: (1)元胞数组的基本组成单元是元胞(cell),元胞在数组中以下标 来进行区分; (2)元胞可以是任何类型、任意大小的数组(如:数值数组、字符 串数组、符号对象等); (3)一个元胞数组中各个元胞可以是不同类型的内容; 元胞数组的维数不受限制,可以采用单下标或全下标寻址; 注意: 元胞和元胞里的内容是两个不同范畴的东西,分别通过“元胞外标识(Cell Indexing)”和”元胞内编址(Content Addressing)”来寻访。“外标识的元胞元素”用

文档评论(0)

junjun37473 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档