3

Haskellでシェルスタイルの構文で文字列を分割するにはどうすればよいですか? Python での同等物はshlex.split.

>>> shlex.split('''/nosuchconf "/this doesn't exist either" "yep"''')
['/nosuchconf', "/this doesn't exist either", 'yep']
4

1 に答える 1

1

正確に何を意味するのかわかりません。文字列から引用符で囲まれたすべての部分文字列を取得したいですか? Python などとは異なり、Haskell には文字列であることを示す引用符のセットが 1 つしかないことに注意してください"..."

考慮すべき可能性:

  • 言葉セリフの機能

  • 分割パッケージ_

  • polyparse、uu-parsinglib、parsec などを使用してカスタム パーサーを記述します。

そのような機能が必要な理由を指定すると役立つ場合があります: 既存のシェル スクリプトを解析しようとしていますか? それからlanguage-shが役に立つかもしれません。しかし、Haskell の内部でそのような文字列を使用するべきではなく、代わりに[String]or を使用するべきです。

于 2011-11-02T04:09:51.457 に答える