- MATLAB基礎及其應用教程
- 周開利 鄧春暉
- 811字
- 2019-12-20 18:11:43
2.5.2 對字符串的多項操作
對字符串的操作主要由一組函數實現,這些函數中有求字符串長度和矩陣階數的length(?。┖蛃ize(?。凶址蛿抵迪嗷マD換的double(?。┖蚦har(?。┑?。下面舉例說明用法。
1.求字符串長度
length(?。┖蛃ize( )雖然都能測字符串、數組或矩陣的大小,但用法上有區別。length(?。┲粡乃鼈兏骶S中挑出最大維的數值大小,而size(?。﹦t以一個向量的形式給出所有各維的數值大小。兩者的關系是:length(?。?max(size(?。U堊屑汅w會下面的舉例。
【例2.51】 length( )和size( )函數的用法。
>> Sa=['I love my teacher, ' 'I' ' love truths ' 'more profoundly.']; >> length(Sa) ans = 49 >> size(Sa) ans = 1 49 >> A=[1 2 3;4 5 6]; >> length(A) ans = 3 >> A=[1 2 ;4 5; 6 7]; >> length(A) ans = 3 >> size(A) ans = 3 2
2.字符串與一維數值數組的相互轉換
字符串是由若干字符組成的,在ASCII碼中,每個字符又可對應一個數值編碼,例如字符A對應65。如此一來,字符串又可在一個一維數值數組之間找到某種對應關系。這就構成了字符串與數值數組之間可以相互轉換的基礎。
【例2.52】 用abs( )、double( )和char( )、setstr(?。崿F字符串與數值數組的相互轉換。
>> S1='I am nobody'; >> As1=abs(S1) As1 = 73 32 97 109 32 110 111 98 111 100 121 >> As2=double(S1) As2 = 73 32 97 109 32 110 111 98 111 100 121 >> char(As2) ans = I am nobody >> setstr(As2) ans = I am nobody
3.比較字符串
strcmp(S1, S2)是MATLAB的字符串比較函數,當S1與S2完全相同時,返回值為1;否則,返回值為0。
【例2.53】 strcmp(?。┑挠梅ā?/p>
>> S1='I am nobody'; >> S2='I am nobody.'; >> strcmp(S1, S2) ans = 0 >> strcmp(S1, S1) ans = 1
4.查找字符串
findstr(S, s)是從某個長字符串S中查找子字符串s的函數。返回的結果值是子串在長串中的起始位置。
【例2.54】 findstr(?。┑挠梅?。
>> S='I believe that love is the greatest thing in the world.'; >> findstr(S, 'love') ans = 16
5.顯示字符串
disp(?。┦且粋€原樣輸出其中內容的函數,它經常在程序中做提示說明用。其用法見下例。
【例2.55】 disp( )的用法。
>> disp(’兩串比較的結果是:'), Result=strcmp(S1, S1), disp(’若為1則說明兩串完全 相同,為0則不同。')
兩串比較的結果是:
Result = 1
若為1則說明兩串完全相同,為0則不同。
除了上面介紹的這些字符串操作函數外,相關的函數還有很多,限于篇幅,不再一一介紹,有需要時可通過MATLAB幫助獲得相關主題的信息。
- Redis使用手冊
- 數據庫技術與應用教程(Access)
- Visual Studio 2015 Cookbook(Second Edition)
- Oracle RAC 11g實戰指南
- 分布式數據庫系統:大數據時代新型數據庫技術(第3版)
- Live Longer with AI
- 區塊鏈通俗讀本
- Dependency Injection with AngularJS
- 數據驅動設計:A/B測試提升用戶體驗
- 大數據架構和算法實現之路:電商系統的技術實戰
- AI時代的數據價值創造:從數據底座到大模型應用落地
- 數據科學工程實踐:用戶行為分析與建模、A/B實驗、SQLFlow
- 探索新型智庫發展之路:藍迪國際智庫報告·2015(上冊)
- 跨領域信息交換方法與技術(第二版)
- 數據分析師養成寶典