大項目 | 記法 | 説明 | 返り値と変数への代入(Attribute) |
文字パーサ Character Parser |
↓ | 1文字を表すパーサ。 | |
lit(ch) | chと一致する文字1文字を表します。 litは全く同じ名前で()内に文字列を指定できる別のパーサもあります。つまり、記述上は、1文字、文字列の両方を指定できます。 例: 'x' lit('x') lit(L'x') lit(c) // cはchar型変数 |
unused もしくは、chがLazy引数の場合、chを呼び出した時の返り値の文字型(charかwcharのことを指していると思われる)。 |
|
char_ | 任意の1文字を表すパーサ。 | マッチした文字。型はパースのときに指定した型、charかwcharと思われる。 | |
char_(ch) | chで指定した1文字を表すパーサ。 例: char_('x') // 'x'とマッチする。 char_(L'x') // L'x'とマッチする char_(x) //xはchar型変数 |
同上 | |
char_(first, last) | 指定の範囲にマッチする1文字を表すパーサ。 例: char_('a','z') // a-zの範囲の文字 char_('0','9') //0-9の範囲の文字 |
同上 | |
char_(def) | defで指定した文字1文字。 defは、正規表現の角カッコ([])で指定するような文字の指定の記法で書けます。ただし、否定(^)は使用できません。 例: char_("a-zA-Z") // alphabetic characters char_("0-9a-fA-F") // hexadecimal characters char_("actgACTG") // DNA identifiers char_("\x7f\x7e") // Hexadecimal 0x7F and 0x7E |
同上 | |
~cp | 文字パーサcpで指定した文字以外。 おそらく、1文字を扱う文字パーサに対してしか使えないと思います。 |
パーサcpの返り値。 | |
文字種別パーサ Character Classification Parsers |
↓ | 様々な1文字を表すパーサ | |
alnum | 英数字1文字とマッチ。 | マッチした文字。型はパースのときに指定した型、charかwcharと思われる。 | |
alpha | 英文字1文字とマッチ。 | 同上 | |
blank | 空白もしくは、タブ(\t、\v)にマッチ。 | 同上 | |
cntrl | 制御文字1文字にマッチ。 | 同上 | |
digit | 数字1文字にマッチ。 | 同上 | |
graph | 空白以外の印字文字1文字にマッチ。 | 同上 | |
lower | 小文字1文字にマッチ。 | 同上 | |
印字文字1文字にマッチ。 | 同上 | ||
punct | 句読点1文字にマッチする。std::ispunct()がtrueを返す文字。 | 同上 | |
space | 空白、タブ(\t、\v)、改行(\n)、LF(\r) | 同上 | |
upper | 大文字1文字にマッチ。 | 同上 | |
xdigit | 16進数文字1文字にマッチ。 | 同上 |