版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、MATLAB专区:MATLAB字符串 MATLAB真正强有力的地方在于它的数值处理能力。然而,经常希望操作文本,例如把标号和标题放在图上。在MATLAB里,文本当作特征字符串或简单地当作字符串。
2、; 6.1 字符串 在MATLAB中的字符串一般是ASCII值的数值数组,它作为字符串表达式进行显示。例如, » t=' How about this charac
3、ter string? ' t = How about this character string? » size
4、(t) ans = 1 32 » w
5、hos Name Size Elements Bytes Density Complex
6、160; ans 1 by 2 2 16
7、60; Full No t 1 by 32 &
8、#160; 32 256 Full No 一个字符串是由单引号括起来的简单文本。在字符串里的每个字符是数组里的一个元素,字符串的存储要求每个字符8个字节,如同MATLAB的其它变量。因为ASCII字符只要求一个字节,故这种存储
9、要求是浪费的,7/8所分配的存储空间无用。然而,对字符串保持同样的数据结构简化MATLAB的内部数据结构。所给出的字符串操作并不是MATLAB的基本特点,但这种表达是方便和可接受的。 为了了解下面字符串的ASCII表达,只需对字符串执行一些算术运算。最简单和计算上最有效的方法是取数组的绝对值。例如, » u=abs(t) u =
10、 Columns 1 through 12 72 111 119 32 97 98 111 117 116 32 116 104 &
11、#160; Columns 13 through 24 105 115 32 99 104 97 114 97 99 116 101 114
12、Columns 25 through 32 32 115 116 114 105 110 103 63 » u=t+0 u =
13、; Columns 1 through 12 72 111 119 32 97 98 111 111 2 3 4 5 下一页
14、160; 7 116 32 116 104
15、160; Columns 13 through 24 105 115 32 99 104 97 114 97 99 116 101 114
16、160; Columns 25 through 32 32 115 116 114 105 110 103 63 在上面后一个例子里,加零到字符串也改变了它的ASCII的表示。函数<B
17、 style="mso-bidi-font-weight: normal">setstr提供了逆转换。 » v=setstr(u)
18、160; v = How about this character string? &
19、#160;因为字符串是数值数组,它们可以用MATLAB中所有可利用的数组操作工具进行操作。例如, » u=t(16:24)
20、 u =
21、160; character 字符串象数组一样进行编址。这里元素16到24包含单词<I style="mso-bidi-font-style: normal">character
22、; » u=t(24:-1:16)
23、160; u = retcarahc
24、 这是单词<I style="mso-bidi-font-style: normal">character的反向拼写。
25、; » u=t(16:24)'
26、; u = &
27、#160; c 上一页 1 2 3 4 5 下一页
28、;
29、0; h a
30、 r
31、0; a &
32、#160; c
33、; t e&
34、#160; r 用转置算子
35、将单词<I style="mso-bidi-font-style: normal">character变换成一个列。 » v=' I can''t find the manua
36、l! ' v = I can't find the ma
37、nual! 字符串内的单引号是由两个连续的单引号来表示。 字符串连接可以直接从数组连接中得到。 » u=' If a woodchuck could chuck wood, ' ; &
38、#160; » v=' how much wood would a woodchuck chuck? ' ; » w=u v w =
39、 If a woodchuck could chuck wood, how much wood would a woodchuck chuck? 函数<B style="mso-bidi-font-weight: normal">disp允许不打
40、印它的变量名而显示一个字符串。例如, »disp(u) &nb上一页 1 2 3 4 5 下一页
41、0; sp;
42、; If a woodchuck could chuck wood, 注意<B style="mso-bidi-font-weight: normal">u = 语句被去掉了。这对脚本文件内显示帮助的文本有用。 &
43、#160; 如同矩阵,字符串可以有多个行,但每行必须有相同数目的列数。因此,显然要用空格以使所有行有相同长度,例如, » v=' Character strings having more than '
44、 ' one row must have the same number ' &
45、#160; ' of column just like matrices! ' v =
46、160; Character strings having more than one row must have the same number
47、0; of column just like matrices! 考虑下面例子,它把一个字符串转换成大写。首先,函数<B style="mso-bidi-font-weight:
48、 normal">find用来找出小写字符的下标值,然后,从小写元素中只减去小写与大写之差,最后,用<B style="mso-bidi-font-weight: normal">setstr把求得的数组转换成它的字符串表示。 » disp(u)
49、; If a woodchuck could chuck wood, » i=find(u>=' a ' & u<= ' z '); % find is a very
50、 powerful function! » u(i)=setstr(u(i)-(' a '-' A ') u = &
51、#160; IF A WOODCHUCK COULD CHUCK WOOD, 事实上,如在3.7节所描述的,矩阵能由单个下标标识。而不是由行和列下标标识,所以上面例子对字符串矩阵<B style="mso-bidi-font-weight: normal">v也同样适用:
52、; » disp(v) Character strings having more than one row must have th
53、e same number of column just like matrices! » i=find(v>=' a ' & v<=' z '); % here i is a single index vector int
54、o v, » v(i)=setstr(v(i)-(' a '-' A ') %上一页 1 2 3 4 5 下一页 &
55、#160; and matrix keeps the same orientation.
56、160; v = CHARACTER STRINGS HAVING MORE THAN ONE ROW MUST HAVE THE SAME NUMBER
57、 OF COLUMN JUST LIKE MATRICES! 最后,当使用前面脚本文件这一章节中的函数<B style="mso-bidi-font-weight: normal">input时,字符串是很有用的。
58、0; » t=' Enter number of rolls of tape > ' ;
59、 » tape=input(t) Enter number of rolls of tape > 5
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年北师大版高三物理选修3-1第七章现代物理测试卷
- 后张法预应力梁张拉记录
- 成都一诊-2026届高三-2025年12月-化学-答案
- 陕西省汉中市汉台区县2027届高一物理第一学期期中统考模拟试题含解析
- 长春希望高中2027届高三上学期第一次月考英语试卷(不含音频及听力原文答案不全)
- 2026年医院ICU护理培训考核试题及答案
- 江西省宜春市宜丰中学2027届高三上学期开学考试(第一次月考)地理试卷(含答案)
- 引导学生自主实践激励机制
- 2026年山东数学专升本历年真题及答案
- 辅警跑步考试标准
- 光伏弱电安装合同范本
- 华为光芯片机考题库
- 《数字矿山课件》课件
- 《电机拖动学》课件
- 外墙保温装饰一体板施工方案
- IATF16949-2016体系管理质量手册(压铸铝合金)
- 统编版(2024新版)三年级上册道德与法治教学计划
- 字体设计(上海出版印刷高等专科学校)智慧树知到答案2024年上海出版印刷高等专科学校
- 9步达到财务自由
- 跨文化管理与全球化团队建设
- 自身抗体研究进展与临床应用课件
评论
0/150
提交评论