回答編集履歴
4
\+1がいらなかった
test
CHANGED
@@ -58,7 +58,7 @@
|
|
58
58
|
|
59
59
|
if (0x2460 <= ch[i] && ch[i] <= 0x2473) {
|
60
60
|
|
61
|
-
builder.append("\u001B\u0024\u0042\u002D").append((char)(0x21 + (ch[i] - 0x2460)
|
61
|
+
builder.append("\u001B\u0024\u0042\u002D").append((char)(0x21 + (ch[i] - 0x2460))).append("\u001B\u0028\u0042");
|
62
62
|
|
63
63
|
}
|
64
64
|
|
3
中括弧の対応を修正
test
CHANGED
@@ -40,6 +40,8 @@
|
|
40
40
|
|
41
41
|
}
|
42
42
|
|
43
|
+
}
|
44
|
+
|
43
45
|
return builder.toString();
|
44
46
|
|
45
47
|
}
|
2
まとめて変換
test
CHANGED
@@ -26,7 +26,7 @@
|
|
26
26
|
|
27
27
|
continue;
|
28
28
|
|
29
|
-
case '\u246
|
29
|
+
case '\u2461': //②のUnicode
|
30
30
|
|
31
31
|
builder.append("\u001B\u0024\u0042\u002D\u0022\u001B\u0028\u0042");
|
32
32
|
|
@@ -45,3 +45,19 @@
|
|
45
45
|
}
|
46
46
|
|
47
47
|
```
|
48
|
+
|
49
|
+
なお、丸数字からの変換規則はよくわかりませんが、5文字目が単純に順番に対応するだけなら、
|
50
|
+
|
51
|
+
まとめてこう書けそうな気がします。
|
52
|
+
|
53
|
+
```java
|
54
|
+
|
55
|
+
// 丸付き1~20までに対応するUnicode
|
56
|
+
|
57
|
+
if (0x2460 <= ch[i] && ch[i] <= 0x2473) {
|
58
|
+
|
59
|
+
builder.append("\u001B\u0024\u0042\u002D").append((char)(0x21 + (ch[i] - 0x2460) + 1)).append("\u001B\u0028\u0042");
|
60
|
+
|
61
|
+
}
|
62
|
+
|
63
|
+
```
|
1
シングルクォートの修正忘れ他
test
CHANGED
@@ -1,6 +1,6 @@
|
|
1
|
-
なぜこんなに無駄に行数長くしているのですか?
|
1
|
+
なぜこんなに無駄に行数長くしているのですか?Unicodeのところまとめて文字列リテラルにすればいいのに。
|
2
2
|
|
3
|
-
[StringBuilder](https://docs.oracle.com/javase/jp/8/docs/api/java/lang/StringBuilder.html)という便利なクラスがありまして…
|
3
|
+
また、[StringBuilder](https://docs.oracle.com/javase/jp/8/docs/api/java/lang/StringBuilder.html)という便利なクラスがありまして…
|
4
4
|
|
5
5
|
```java
|
6
6
|
|
@@ -26,7 +26,7 @@
|
|
26
26
|
|
27
27
|
continue;
|
28
28
|
|
29
|
-
case
|
29
|
+
case '\u2460': //②のUnicode
|
30
30
|
|
31
31
|
builder.append("\u001B\u0024\u0042\u002D\u0022\u001B\u0028\u0042");
|
32
32
|
|