
エントリーの編集

エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
D言語で構文解析器をつくる(1) パーサー・コンビネーター編 - Qiita
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています

- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
D言語で構文解析器をつくる(1) パーサー・コンビネーター編 - Qiita
unittest { // 1以上の数字 alias rng!('1', '9') n1; // 0以上の数字 alias rng!('0', '9') n0; // カ... unittest { // 1以上の数字 alias rng!('1', '9') n1; // 0以上の数字 alias rng!('0', '9') n0; // カンマ区切り数字の先頭。最初の1桁は[1, 9]で、カンマの出てこない最初の3桁まで alias seq!(n1, opt!n0, opt!n0) digitsHead; // 数字のカンマで区切られている末尾部分。 alias seq!(ch!',', n0, n0, n0) digitsTail; // ゼロの場合 alias seq!(ch!'0', end) zero; // 数字。ゼロまたは数字列 alias sel!(zero, seq!(digitsHead, more0!digitsTail, end)) digits; // 以下は成功するソース foreach(s; [ "0", "1", "12", "