字元分析

isAlphaNumeric(thisChar)

描述

分析一個字元是否為英文字母或數字(即 a ~ z 或 A ~ Z 或 0 ~ 9 其中之一)。

參數

thisChar: 要分析的字元。

回傳

True 或 false。

isAlpha(thisChar)

描述

分析一個字元是否為英文字母(即 a ~ z 或 A ~ Z 其中之一)。

參數

thisChar: 要分析的字元。

回傳

True 或 false。

isAscii(thisChar)

描述

分析一個字元是否為 ASCII 字符。(ASCII 字符表請參考 ASCII wiki 網站)。

參數

thisChar: 要分析的字元。

回傳

True 或 false。

isWhitespace(thisChar)

描述

分析一個字元是否為空格(’ ‘)或 Tab(’\t’)字符。

參數

thisChar: 要分析的字元。

回傳

True 或 false。

isControl(thisChar)

描述

分析一個字元是否為控制字符。(控制字符的說明請參考 wiki 網站)

參數

thisChar: 要分析的字元。

回傳

True 或 false。

isDigit(thisChar)

描述

分析一個字元是否為數字 0 ~ 9 其中之一。

參數

thisChar: 要分析的字元。

回傳

True 或 false。

isGraph(thisChar)

描述

分析一個字元是否為空格以外的可列印字符。

參數

thisChar: 要分析的字元。

回傳

True 或 false。

isLowerCase(thisChar)

描述

分析一個字元是否為小寫的英文字母。

參數

thisChar: 要分析的字元。

回傳

True 或 false。

isPrintable(thisChar)

描述

分析一個字元是否為可列印的字符(包含空格字符)。

參數

thisChar: 要分析的字元。

回傳

True 或 false。

isPunct(thisChar)

描述

分析一個字元是否為空格、數字、英文字母以外的可列印字符。

參數

thisChar: 要分析的字元。

回傳

True 或 false。

isSpace(thisChar)

描述

分析一個字元是否為空格符號(’ ‘)、換頁符號(’\f’)、新列符號(’\n’)、回捲符號(’\r’)、水平 Tab(’\t’)、垂直 Tab(’\v’)。

參數

thisChar: 要分析的字元。

回傳

True 或 false。

isUpperCase(thisChar)

描述

分析一個字元是否為大寫的英文字母。

參數

thisChar: 要分析的字元。

回傳

True 或 false。

isHexadecimalDigit(thisChar)

描述

分析一個字元是否為十六進制的數字(即 0 ~ 9、A ~ F 其中之一)。

參數

thisChar: 要分析的字元。

回傳

True 或 false。

範例

/*
  Character analysis operators

 Examples using the character analysis operators.
 Send any byte and the sketch will tell you about it.

 created 29 Nov 2010
 modified 2 Apr 2012
 by Tom Igoe

 This example code is in the public domain.
 */

void setup() {
  // 打開串列通訊埠
  Serial.begin(9600);
  while (!Serial) {
    ; // 等代電腦端打開串列通訊接口
  }

  // 送出提示訊息:
  Serial.println("send any byte and I'll tell you everything I can about it");
  Serial.println();
}

void loop() {
  // 取得傳入的字元
  if (Serial.available() > 0) {
    int thisChar = Serial.read();

    // 回傳訊息給傳送者,告知已收到某字元
    Serial.print("You sent me: \'");
    Serial.write(thisChar);
    Serial.print("\'  ASCII Value: ");
    Serial.println(thisChar);

    // 分析送過來的字元
    if (isAlphaNumeric(thisChar)) {
      Serial.println("it's alphanumeric");
    }
    if (isAlpha(thisChar)) {
      Serial.println("it's alphabetic");
    }
    if (isAscii(thisChar)) {
      Serial.println("it's ASCII");
    }
    if (isWhitespace(thisChar)) {
      Serial.println("it's whitespace");
    }
    if (isControl(thisChar)) {
      Serial.println("it's a control character");
    }
    if (isDigit(thisChar)) {
      Serial.println("it's a numeric digit");
    }
    if (isGraph(thisChar)) {
      Serial.println("it's a printable character that's not whitespace");
    }
    if (isLowerCase(thisChar)) {
      Serial.println("it's lower case");
    }
    if (isPrintable(thisChar)) {
      Serial.println("it's printable");
    }
    if (isPunct(thisChar)) {
      Serial.println("it's punctuation");
    }
    if (isSpace(thisChar)) {
      Serial.println("it's a space character");
    }
    if (isUpperCase(thisChar)) {
      Serial.println("it's upper case");
    }
    if (isHexadecimalDigit(thisChar)) {
      Serial.println("it's a valid hexadecimaldigit (i.e. 0 - 9, a - F, or A - F)");
    }

    // 增加空行並回傳 "請求下一個字元" 的訊息
    Serial.println();
    Serial.println("Give me another byte:");
    Serial.println();
  }
}

語法參考主頁面

The text of the 86Duino reference is a modification of the Arduino reference, and is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.