SQL整形

今は字句解析の作りかけ状態。
汎用的なものを考えているので、Stringを入力し、Stringを出力します。実際に使う場合は、テキストファイルやXMLファイルのタグ、リダイレクトやJTextAreaなど色々考えられるけれど、Stringにしておけば様々な場合に対応できるでしょう。WindowsUnixなどで使うことが想定されますが、Stringなので、文字コードは呼び出し側で変換済みとします。

今の戦略は・・・
SQL文の文字列を、

KEYWORD   "insert"
SPACE     "   "
KEYWORD   "into"
NAME      "user"
SPACE     "values"

という具合に、整数と文字列のリストにします。
そのあと、

  • キーワードは大文字にする/小文字にする
  • (のあとは、改行を入れる。(の前に改行を入れる。
  • 名前は大文字/小文字/先頭のみ大文字にする。
  • SELECT,UPDATE,DELETE,INTOの後は改行し、indentを+2する。

などのルールを適応し、整形させます。
最後に、文字列にして出力する。
という感じです。
これでいけるかな???