Pythonのshlexライブラリに対応するLuaはありますか?shuaに相当するLua?
答えて
Iは、プロジェクトへの参照がLuaParseと呼ばれるが見つかりました:
LuaParseはBlex、汎用純Luaのレクサー、及びlparse、純粋なのLUAのLUAパーサー、ならびにユーティリティ種々の機能を含みますプロトタイプのパッケージ管理システムなどがあります。
これはあなたのニーズを迷惑にします。
LPegも参照してください。
も参照gg
,mlp
およびclopts
モジュールMetaluaから参照してください。
これらは「Not-quite」Lua(Metaluaは別の言語です)ですが、いくつかの有用な洞察を提供するかもしれません。また、Metaluaコードは普通のLuaバイトコードにコンパイルされるので、再利用できます。
シェルのような言語(shlexの実際の設計目標と思われる)を解析することが目標の場合は、LPegに文法を書いてlhf suggestsと書いてください。しかし、シェルが実際に従う階層化された引用規則を完全に実装する文法を書くのは簡単ではありません。すべての有効な/bin/sh
(または悪いことには、csh
)のスクリプトを正しく解析することを期待していない限り、便利な文法を書くのは簡単です。
実際に設定ファイルやアプリケーションスクリプティングのために賢明な「小さな言語」を作成することを目標にしているのであれば、Lua自体は既にその言語に近いと示唆しています。もともとはデータ記述を念頭に置いて設計されていたため、パーサーは相当に大きなデータ宣言を処理するのにはかなり熟練しています。この方法でLuaを使用する方法の例については、section 10.1 of PiLを参照してください。後のchapter 25は、構成の特定のユースケースのためのより大きいアプリケーションとのLuaの統合について説明し、いくつかのアプローチを示しています。
- 1. Pythonに相当するLuaのテーブル
- 2. LuaのC++ Setw相当?
- 3. virtualenvのLuaに相当しますか?
- 4. luaのリターンに相当しますか?
- 5. Javascriptのapply()に相当するluaはありますか?
- 6. LuaインタプリタのMatlab "whos"コマンドに相当しますか?
- 7. luaでポインタが相当するポインタへのポインタ
- 8. Luaでのアラビア文字列とそれに相当するテーブルグリフによるループ?
- 9. INET_NTOAとINET_ATONに相当するPHP相当額
- 10. .NETに相当するjava.awt.color.ColorSpace
- 11. Pythonに相当するPropertyUtilsBean
- 12. PowerThellに相当するSignTool.exe
- 13. カールC#に相当する
- 14. omp_get_thread_numに相当するグランドセントラルディスパッチ
- 15. イメージレンダリングDOMに相当する
- 16. '__builtin_return_address'に相当するMSVC
- 17. grepに相当するstringr
- 18. HTML5コンテキストメニューに相当する
- 19. R ++に相当するC++
- 20. PrintWriterに相当するSystem.setOut()
- 21. jQueryに相当するプロトタイプ
- 22. XDialogに相当するクロスプラットフォーム
- 23. IntelliJに相当するWindowBuilder?
- 24. "Not MyEnum.SomeValue"に相当する#
- 25. Html.Actionに相当するSDK
- 26. C++に相当する。cin.peek()
- 27. Visioに相当する3D
- 28. ManualResetEventに相当するBoost?
- 29. QFormQuay2に相当するQFormLayout?
- 30. API17に相当するScriptIntrinsicBLAS
私はshlexがコマンドライン解析ツールだと思っていたので、元々これを尋ねました:) – RCIX