官术网_书友最值得收藏!

  • MATLAB 8.5基礎教程
  • 楊德平 孫顯錄 管殿柱等
  • 956字
  • 2020-05-28 17:23:23

3.1 字符串數(shù)組

字符串是指1×n的字符數(shù)組,也可以是多行多列的字符串數(shù)組。MATLAB提供了多種字符串操作,包括字符串的創(chuàng)建、查找及與數(shù)值之間的轉(zhuǎn)換等。

3.1.1 串數(shù)組的生成

字符串是存儲在一個行向量中的文本,行向量中的每一個元素代表一個字符。在MATLAB中創(chuàng)建字符串的方法具體如下。

1.直接輸入法

直接用單引號輸入,例如在命令行窗口輸入:

運行結(jié)果如下:

字符串內(nèi)可包含字母、數(shù)字、特殊字符以及中文字等內(nèi)容。若在單引號外加大括號{}也可以顯示字符串,例如:

從結(jié)果來看,顯示的內(nèi)容有單引號標示,而單引號法顯示的卻只是文本。

2.利用命令disp法

例如:

運行結(jié)果如下:

3.利用命令char法

例如:

4.利用命令input法

如果變量in是's',則輸入的內(nèi)容以字符串的形式進行保存。

例如,在命令行窗口中輸入:

運行結(jié)果如下:

然后在“x:”的后面輸入一個數(shù)6,按<Enter>鍵即得:

此時數(shù)值6以變量x的形式顯示在工作區(qū)Workspace內(nèi)。若執(zhí)行如下命令:

此時數(shù)字6以字符串的形式保存在工作區(qū)Workspace內(nèi)。

5.在字符串中用兩個單引號來表示一個單引號

例如:

3.1.2 串數(shù)組的訪問和大小

1.串數(shù)組的訪問

字符串的存儲是將其中字符按順序單一存放的,且存放的是字符的ASCII碼。當在屏幕上顯示字符變量的值時,顯示出來的是文本,而不是ASCII數(shù)值。由于字符串是以向量的形式來存儲的,所以可以通過它的下標對字符串中的任何一個元素進行訪問。

例如,對上面定義的字符串Book,輸入命令:

2.字符串的長度

字符串的長度可用length()和size()函數(shù)來確定,例如:

3.字符串的查找

在字符串中尋找某個字符串,可用函數(shù)findstr()來實現(xiàn)。

例如,在上面定義的字符串Book中查找A所在的位置:

注:字符串和要查找的字符串的位置可以互換,且其結(jié)果相同。因此,S1、S2哪個在前都可。

3.1.3 多行串數(shù)組的創(chuàng)建

1.多行串數(shù)組的直接輸入

字符串數(shù)組可以是多行多列的數(shù)組,但必須保證每一行都有相同的列數(shù)。若字符串長度不一樣,需要用空格填充,保證所有行的長度都相同。例如:

2.利用串操作函數(shù)創(chuàng)建多行串數(shù)組

利用函數(shù)char()、strvcat()創(chuàng)建多行串數(shù)組,每行的字符串長度可以不同。例如:

3.1.4 字符串數(shù)組的轉(zhuǎn)換

1.字符串轉(zhuǎn)換成矩陣

將字符串轉(zhuǎn)換成矩陣的函數(shù)為str2mat()。例如:

2.字符串與數(shù)值的轉(zhuǎn)換

利用str2num()和num2str()實現(xiàn)字符串與數(shù)值的相互轉(zhuǎn)換。例如:

注:雖然S的顯示結(jié)果與X看上去一樣,但其含義不同。X是數(shù)組,S是字符串。同樣字符串可以轉(zhuǎn)化為數(shù)組,例如:

主站蜘蛛池模板: 武山县| 剑川县| 金阳县| 阿鲁科尔沁旗| 兴国县| 拉孜县| 吉安市| 弥勒县| 建阳市| 吉木萨尔县| 鹤峰县| 宽城| 徐汇区| 赤水市| 隆尧县| 武宁县| 阿克| 营山县| 通化市| 通州市| 无棣县| 潼关县| 滦南县| 奇台县| 大方县| 个旧市| 资阳市| 桐柏县| 怀来县| 福贡县| 宁远县| 林西县| 扬州市| 历史| 舟曲县| 衡阳县| 依兰县| 双江| 钟祥市| 绥滨县| 应城市|