コマンドラインでファイルを解析する:UNIXツールは私が変換したい次のようになりますPythonスクリプトを持って
import sys
# more imports
''' some comments '''
class Foo:
def _helper1():
etc.
def _helper2():
etc.
def foo1():
d = { a:3, b:2, c:4 }
etc.
def foo2():
d = { a:2, b:2, c:7 }
etc.
def foo3():
d = { a:3, b:2, c:7 }
etc.
etc.
if __name__ == "__main__":
etc.
私はちょうどfoo*()
機能を解析し、維持できるようにしたいと思いますd={a:3, b:2}
のような特定の属性を持つものだけです。明らかに、他のものはすべてfoo*()
でなければ、変換は実行されます。 d
は異なるキー、値を持つかもしれませんが、foo*()
はよく定義されます。
私はチェーンでこれを行うために使用できるいくつかのUnixツールがありますか? grep
を使用してfoo
を特定することができますが、ロジックの保持または拒否部分を適用するために次の2行をスキャンするにはどうすればよいですか?
編集:ノート、カスタムパーサーを作成する前にコマンドラインツールでこれを行うのが妥当かどうかを確認しようとしています。私はパーサーを書く方法を知っています。
Pythonを操作するためのツールがPythonに組み込まれています。これは、アドホックなPythonパーサーに正規表現しようとするよりもはるかに確実に機能します。 – pvg
こんにちは。あなたの質問はトピック外であり、すぐに閉鎖される可能性があります。 [ツアー](https://stackoverflow.com/tour)を完了し、[ヘルプセンター](https://stackoverflow.com/help)を読んで、このサイトの話題を理解することをお勧めします。 –
Hackernewsには、戦闘員のSOがどのようになっているのかについてのコメントがたくさんありました。私はカスタムパーサーを書く前に既存のツールを再利用しようとしているので、なぜこれがトピックとは考えられないのか分かりません。UNIXにはたくさんのコマンドラインツールがあるので、人々がそれらのすべてを知ることを期待しないことは有効です。 – rottyguy