字元類別函數(Character Class Functions)

Octave 中提供了字元類別測試函數,這些函數類似 C 語言標準函式庫中的函數,但 Octave 所提供的函數可以接受字串陣列並傳回包含 01 的矩陣,1 代表在字串陣列中對應的字元測試結果為 true0 則代表 false,例如:

isalpha ("!Q@WERT^Y&")

輸出為

ans =

   0   1   0   1   1   1   1   0   1   0
isalnum (s)

isalnum(s) 判斷字串 s 是否為字母或數字。

isalpha (s)
isletter (s)

判斷字串 s 是否為字母(letter)。

isascii (s)

isascii(s) 函數會判斷字串 s 是否為 ASCII 字元(ASCII 碼介於 0 至 127)。

iscntrl (s)

iscntrl(s) 函數會判斷字串 s 是否為控制字元(control character)。

isdigit (s)

isdigit(s) 函數會判斷字串 s 是否為數字(digit)。

isgraph (s)

isgraph(s) 函數會判斷字串 s 是否為可顯示字元(printable character,不包含空白字元)。

isletter (s)

isletter(s) 函數會判斷字串 s 是否為字母(letter)。

islower (s)

islower(s) 函數會判斷字串 s 是否為小寫字母。

isprint (s)

isprint(s) 函數會判斷字串 s 是否為可顯示字元(printable character,包含空白字元)。

ispunct (s)

ispunct(s) 函數會判斷字串 s 是否為 punctuation character。

isspace (s)

isspace(s) 函數會判斷字串 s 是否為空白(包含 space、 formfeed、 newline、 carriage return、 tab 與 vertical tab)。

isupper (s)

isupper(s) 函數會判斷字串 s 是否為大寫字母。

isxdigit (s)

isxdigit(s) 函數會判斷字串 s 是否為十六進位的數字(hexadecimal digit)。

isstrprop (str, pred)

isstrprop(str, pred) 函數可以測試字串 str 的屬性,參數 pred 可指定屬性,例如:

isstrprop ("abc123", "alpha")

輸出為

ans =

   1   1   1   0   0   0

str 為一個巢狀陣列,則會以遞迴的方式對每個元素測試。以下是參數 pred 可用的選項:

  • "alpha":字母(letter)。
  • "alnum""alphanum":字母或數字。
  • "ascii":ASCII 字元(ASCII 碼介於 0 至 127)。
  • "cntrl":控制字元(control character)。
  • "digit":數字(digit)。
  • "graph""graphic":可顯示字元(printable character,不包含空白字元)。
  • "lower":小寫字母。
  • "print":可顯示字元(printable character,包含空白字元)。
  • "punct":punctuation character。
  • "space""wspace":空白(包含 space、 formfeed、 newline、 carriage return、 tab 與 vertical tab)。
  • "upper":大寫字母。
  • "xdigit":十六進位的數字(hexadecimal digit)。