天天看点

《MATLAB图像处理375例》——1.7 字符串

本节书摘来自异步社区《matlab图像处理375例》一书中的第1章,第1.7节,作者:matlab技术联盟著,更多章节内容可以访问云栖社区“异步社区”公众号查看

matlab图像处理375例

字符串或串(string)是由数字、字母、下划线组成的一串字符。字符串在数据的可视化、应用程序的交互方面起到非常重要的作用,创建字符串时需要使用单引号将字符串的内容包括起来,字符串一般以行向量形式存在,并且每一个字符占用两个字节的内存。

1.7.1 创建字符串

【例1-47】创建字符串时,只要将字符串的内容用单引号包括起来即可,例如:

运行结果如下:

若需要在字符串内容中包含单引号,则在输入字符串内容时,连续输入两个单引号即可,例如:

运行结果如下。

【例1-48】使用char函数创建一些无法通过键盘输入的字符,该函数的作用是将输入的整数参数转变为相应的字符。

1.7.2 基本字符串操作

基本字符串操作主要有字符串元素索引、字符串的拼接、字符串和数值的转换。下面将进行介绍。

1.字符串元素索引

在matlab中,字符串实际上也是一种向量或者数组,一般利用索引操作数组的方法都可以用来操作字符串。

【例1-49】利用索引操作数组的方法用来操作字符串。

2.字符串的拼接

字符串可以利用“[]”运算符进行拼接,若使用“,”作为不同字符串之间的间隔,则相当于扩展字符串成为更长的字符串向量;若使用“;”作为不同字符串之间的间隔,则相当于扩展字符串成为二维或者多维的数组,这时不同行上的字符串必须具有同样的长度。

【例1-50】字符串的拼接示例。

3.字符串和数值的转换

在matlab中,字符串和数值的转换可以使用char函数将数值转变为字符,也可以使用double函数将字符转变成数值。

【例1-51】字符串和数值的转换示例。

1.7.3 字符串操作函数

在matlab中,字符串操作函数如表1-12所示。

《MATLAB图像处理375例》——1.7 字符串

【例1-52】deblank函数示例。

【例1-53】ischar函数示例。

【例1-54】组合字符串strcat函数和strvcat函数示例。

【例1-55】查寻索引findstr函数和strfind 函数示例。

【例1-56】对齐排列字符串strjust函数示例。

【例1-57】替换字符串中的子字符strrep 函数示例。

查寻匹配的字符串strmatch 函数示例。

【例1-58】改变字符串中字符的大小写upper函数和lower 函数示例。

1.字符串转换函数

使用不同的函数可以允许不同类型的数据和字符串类型的数据之间进行转换,在matlab中直接提供了相应的函数对同样类型的数据进行数制的转换,如表1-13、表1-14所示。

《MATLAB图像处理375例》——1.7 字符串
《MATLAB图像处理375例》——1.7 字符串

函数str2num在使用时需要注意:被转换的字符串仅能包含数字、小数点、字符“e”或者“d”、数字的正号或者负号、复数的虚部字符“i”或者“j”,使用时要注意空格,例如。

【例1-59】str2num函数示例。

【例1-60】使用函数num2str将数字转换成为字符串时,指定字符串所表示的有效数字位数。

【例1-61】其他的转换函数示例。

2.格式化输入输出

matlab可以进行格式化的输入、输出,格式化字符串都可以用于matlab的格式化输入输出函数,如表1-15所示。

《MATLAB图像处理375例》——1.7 字符串
《MATLAB图像处理375例》——1.7 字符串

在matlab中,有sscanf和sprintf这样两个函数进行格式化的输入和输出,调用方法如下:

【例1-62】sscanf函数示例。

【例1-63】sscanf函数示例(a=sscanf(s,format,size))。

在matlab中,input函数用来完成获取用户输入数据的功能,以满足能够和用户的输入进行交互的需要,该函数的调用方法如下:

其中,第一个参数prompt为提示用的字符串;第二个参数s,若有s,则输入的数据为字符串,没有s,则输入的数据为双精度数据。

继续阅读