差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン次のリビジョン両方とも次のリビジョン | ||
programming:nim:parse_parameter [2018/10/23] – ikatakos | programming:nim:parse_parameter [2018/10/23] – ikatakos | ||
---|---|---|---|
行 4: | 行 4: | ||
それらを受け取るプログラムを書く際、最近の言語なら、いずれも解析ライブラリが存在している。Nimもご多分に漏れずデフォルトでモジュールが存在する。 | それらを受け取るプログラムを書く際、最近の言語なら、いずれも解析ライブラリが存在している。Nimもご多分に漏れずデフォルトでモジュールが存在する。 | ||
+ | |||
+ | * Nim ver.0.19.0 | ||
=====コマンドライン引数解析===== | =====コマンドライン引数解析===== | ||
行 74: | 行 76: | ||
* [[https:// | * [[https:// | ||
- | こちらは第三者モジュールだが、docoptのNim移植版が存在する。 | + | こちらは第三者モジュールで本家はPythonだが、Nim移植版が存在する。 |
docoptは「所定のルールに従ったヘルプ文字列を与えることで、パーサを組み立てる」という逆転の発想のライブラリ。 | docoptは「所定のルールに従ったヘルプ文字列を与えることで、パーサを組み立てる」という逆転の発想のライブラリ。 | ||
+ | より複雑なルールを持ったパーサを、直感的にわかりやすい記法で作成できるので、標準モジュールのparseopt以上のことがしたくなったらこちらが楽。 | ||
+ | |||
+ | * [[https:// | ||
行 103: | 行 108: | ||
変数は使えない模様。 | 変数は使えない模様。 | ||
+ | |||
+ | また、Windowsのパス区切り文字である「: | ||
+ | |||
+ | さらに「\」はエスケープ文字として扱われるため、'' | ||
+ | |||
+ | .ini記法のパーサは様々な言語に存在しても、この辺の細かな文字列の解釈の違いは言語毎に異なるため、ややこしいね。 | ||
+ | |||
+ | |||