ここに記載する内容は個人的な調査によるものであり、誤りが存在する可能性があります。
ゴースト文字列は発生した判定を時系列で並べたものをある規則で圧縮したものである。
ゴースト文字列に現れる文字は以下に大別される。
- 判定文字
@, A-E, O-R, X-Y, a-b, g-n, q
情報として固定判定(判定の0個以上の配列)と持続判定(判定1個)を持つ。
- 数値文字
0-9
判定の情報を持たず、10進数値として解釈される。
- 判定付き数値文字
F-N, S-W, c-f, o-p, r-z
上記の判定文字と数値文字の特徴を兼ね備える。すなわち各文字が固定判定、持続判定と10進数値情報を持つ。
- 終文字
Z
ゴースト文字列の終了を意味する。
基本的に以下の規則に従う(正規表現の記号を使用)。
-
ゴースト文字列 := ^(判定塊)*ZZ?$
-
判定塊 := ^[判定文字](持続数)?$ | ^[判定付き数値文字](持続数)?$
-
持続数 := ^[数値文字]*$
各判定塊は以下のような判定の連続を表す。
^[判定文字](持続数)?$
固定判定 + 持続判定 * MAX(持続数,1)
^[判定付き数値文字](持続数)$
固定判定 + 持続判定 * CONCAT(数値情報,持続数)
ここで、CONCAT
は文字列としての結合を意味する(ex.CONCAT(2,003)=2003
)
数値情報が空欄でないものは判定付き数値文字であることを意味する。
文字 | 固定判定 | 持続判定 | 数値情報 |
---|---|---|---|
@ | 空PR | ||
A | PR | ||
B | BD | ||
C | GD | ||
D | GR | ||
E | PG | ||
F | PG | 1 | |
G | PG | 2 | |
H | PG | 3 | |
I | PG | 4 | |
J | PG | 5 | |
K | PG | 6 | |
L | PG | 7 | |
M | PG | 8 | |
N | PG | 9 | |
P | PG | GD | |
Q | PG | BD | |
R | PG | PR | |
S | GR | 2 | |
T | GR | 3 | |
U | GR | 4 | |
V | GR | 5 | |
W | GR | 6 | |
X | GR | PG | |
Y | GR | GD | |
a | GR | BD | |
b | GR | PR | |
c | GD | 2 | |
d | GD | 3 | |
e | GD | 4 | |
f | GD | 5 | |
g | GD | PG | |
h | GD | GR | |
i | GD | BD | |
j | GD | PR | |
k | PR | BD | |
l | PR | GD | |
m | PR | GR | |
n | PR | PG | |
o | PR | 2 | |
p | PR | 3 | |
q | GR PG GR | PG | |
r | GR | PG | 1 |
s | GR | PG | 2 |
t | GR | PG | 3 |
u | GR | PG | 4 |
v | GR | PG | 5 |
w | GR | PG | 6 |
x | GR | PG | 7 |
y | GR | PG | 8 |
z | GR | PG | 9 |