📝

文字コード(ASCIIコード)を取得するコードサンプル

2023/08/29に公開

https://qiita.com/items/3c70b86b76ce34b21cf7


お詫び

Qiitaの元記事にて、区切り線を「---」で書いている場所があり、これがZennの記法に干渉して一部うまく表示できない記事がある事を認識しています。
全ての記事を精査しきれていないため、お手数ですがお見かけの際は教えていただけると大変喜びます。


動機

特定の文字を取り出したい時によくお世話になるコードをいちいち作るのが面倒くさいので備忘録

調査コード

class debug {
  public static void main(String[] args) {
    for (int i = 33; i < 128; i++) {
      System.out.println(i + ": " + (char) i);
    }
  }
}

やりたかったこと

class debug {
  // 与えられた文字列を1文字ずつ調べて一致するものを取得したい場合、matchやsplitで正規表現をすると遅すぎたのでシンプルに文字だけ比較する。
  // 参考: https://blanktar.jp/blog/2015/11/java-character-count

  // mainから呼びたいのでstaticにしているが、実際に使う時は各クラスに合わせること
  final public static int searchChar(String str, char target) {
    int count = 0;

    for (char x : str.toCharArray()) {
      if (x == target) count++;
    }

    return count;
  }
}

チートシート

参考ページ: http://www3.nit.ac.jp/~tamura/ex2/ascii.html

英字(大文字)

65: A
66: B
67: C
68: D
69: E
70: F
71: G
72: H
73: I
74: J
75: K
76: L
77: M
78: N
79: O
80: P
81: Q
82: R
83: S
84: T
85: U
86: V
87: W
88: X
89: Y
90: Z

英字(小文字)

97: a
98: b
99: c
100: d
101: e
102: f
103: g
104: h
105: i
106: j
107: k
108: l
109: m
110: n
111: o
112: p
113: q
114: r
115: s
116: t
117: u
118: v
119: w
120: x
121: y
122: z

数値

48: 0
49: 1
50: 2
51: 3
52: 4
53: 5
54: 6
55: 7
56: 8
57: 9

記号

33: !
34: "
35: #
36: $
37: %
38: &
39: '
40: (
41: )
42: *
43: +
44: ,
45: -
46: .
47: /
58: :
59: ;
60: <
61: =
62: >
63: ?
64: @
91: [
92: \
93: ]
94: ^
95: _
96: `
123: {
124: |
125: }
126: ~
GitHubで編集を提案

Discussion