matlab基本函數strcmp num2str 字符串格式


一起來學演化計算-matlab基本函數strcmp num2str 字符串格式

覺得有用的話,歡迎一起討論相互學習~

我的微博我的github我的B站

strcmp

  • 比較字符串

語法

  • tf = strcmp(s1,s2)

描述

  • tf = strcmp(s1,s2)比較s1和s2,如果兩者相同,則返回1 (true)。否則,strcmp返回0 (false)。如果文本的大小和內容相同,則認為文本是相同的。返回的結果tf是邏輯類型的數據。
  • 輸入可以是字符向量、字符數組和字符向量的單元格數組的組合。

示例

比較兩個字符串向量

s1 = 'Yes';
s2 = 'No';
tf = strcmp(s1,s2)
tf =

     0

strcmp returns 0 because s1 and s2 are not equal.

Compare two equal character vectors.

s1 = 'Yes';
s2 = 'Yes';
tf = strcmp(s1,s2)
tf =

     1

strcmp returns 1 because s1 and s2 are equal.

在單元格數組中查找文本

s1 = 'upon';
s2 = {'Once','upon';
      'a','time'};
tf = strcmp(s1,s2)
tf =

     0     1
     0     0

數組s2中只出現一次s1,它發生在元素s2(1,2)處

比較兩個字符向量單元數組

  • 比較兩個字符向量單元數組中的每個元素
s1 = {'Time','flies','when';
      'you''re','having','fun.'};
s2 = {'Time','drags','when';
      'you''re','anxiously','waiting.'};
tf = strcmp(s1,s2)
tf =

     1     0     1
     1     0     0

在s1和s2中有三個相等元素的實例。這些是下標(1,1)處的“Time”,下標(1,3)處的“when”,下標(2,1)處的“you re”。

輸入參數

輸出參數


num2str

  • 將數字轉換為字符串

語法

  • s = num2str(A) 將數字數組轉換為字符串表示形式。輸出格式取決於原始值。num2str用於標記和用數字給圖做標題。
  • s = num2str(A,precision) 返回一個字符串表示形式,其中包含精度指定的最大有效位數。
  • s = num2str(A,formatSpec) 將formatSpec指定的格式應用於A的所有元素。

示例

浮點數的默認轉換

  • 將pi和eps返回的浮點值轉換為字符串
s = num2str(pi)
s =

3.1416

s = num2str(eps)
s =

2.2204e-16

指定精度

  • 指定浮點值的有效位數的最大數目
A = gallery('normaldata',[2,2],0);
s = num2str(A,3)
s =

-0.433     0.125
 -1.67     0.288

指定格式

  • 對浮點數數組指定寬度,精度和格式
A = gallery('uniformdata',[2,3],0) * 9999;
s = num2str(A,'%10.5e\n')
s =

9.50034e+03
6.06782e+03
8.91210e+03
2.31115e+03
4.85934e+03
7.62021e+03
  • 格式“%10.5e”以五位小數的指數格式打印每個值,“\n”打印一個新行字符。並且只打印10位數字

字符串打印格式

  • 輸出字段的格式,指定為包含格式化操作符的字符向量。formatSpec還可以包含普通文本和特殊字符

格式化操作符

  • 格式化操作符以百分號、%開始,以轉換字符結束。還可以在%和轉換字符之間指定標識符、標志、字段寬度、精度和子類型操作符。(操作符之間的空格無效,此處僅顯示可讀性)。

轉換字符

此表顯示將數字和字符數據轉換為文本格式的轉換字符。

可選操作符

  • 可選標識符、標志、字段寬度、精度和子類型操作符進一步定義了輸出文本的格式。
    The optional identifier, flags, field width, precision, and subtype operators further define the format of the output text.

標識符 Identifier

  • 處理函數輸入參數的順序。使用語法n$,其中n表示函數調用中其他輸入參數的位置。
  • Example: ('%3\(s %2\)s %1\(s %2\)s','A','B','C') prints input arguments 'A', 'B', 'C' as follows: C B A B.
  • Note: 如果輸入參數是數組,則不能使用標識符從該輸入參數指定特定的數組元素。

標志 Flags

區域寬度 Field Width

  • 要打印的最小字符數。字段寬度操作符可以是一個數字,或者一個星號( * )來引用輸入參數。
  • Example: The input arguments ('%12d',intmax) are equivalent to ('% * d', 12, intmax).
  • 函數在值之前用空格填充字段寬度,除非由標記另行指定。

精度 Precision

特殊文本即轉義字符

formatSpec還可以在百分號前、%或轉換字符后包含附加文本

注意

  • 數值轉換只打印復數的實數部分。
  • 如果指定不適合數據的轉換,例如數值的字符轉換,MATLAB將覆蓋指定的轉換,並使用%e。
    示例:'%s'將pi轉換為3.141593e+00。
  • 如果將字符轉換(%c或%s)應用於整數值,MATLAB將與有效字符代碼對應的值轉換為字符。
    示例: ' %s' converts [65 66 67] to ABC.
  • 提示num2str不接受formatSpec輸入參數中的位置標識符。例如,num2str([14 15],'%2\(X %1\)o])會報錯
  • 位置標識符指定格式化操作符處理函數輸入參數的順序,而不是輸入數組的元素。當您調用num2str時,只有一個輸入參數需要轉換數字。
  • 算法num2str從字符串中刪除任何前導空格,即使formatSpec包含空格字符標志。例如,num2str(42.67,'% 10.2f')返回一個1×5的字符數組'42.67'


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM