Sed-pattern-range
提供:Dev Guides
ストリームエディター-パターン範囲
前の章で、SEDがアドレス範囲を処理する方法を学びました。 この章では、SEDがパターン範囲を処理する方法について説明します。 パターン範囲は、単純なテキストでも複雑な正規表現でもかまいません。 例を挙げましょう。 次の例は、著者Paulo Coelhoのすべての本を印刷します。
上記のコードを実行すると、次の結果が得られます。
上記の例では、SEDは各行で動作し、文字列Pauloに一致する行のみを出力します。
パターン範囲とアドレス範囲を組み合わせることもできます。 次の例では、Alchemistの最初の一致から5行目までの行を出力します。
上記のコードを実行すると、次の結果が得られます。
パターンの最初の出現を見つけた後、Dollar($)文字を使用してすべての行を印刷できます。 次の例では、パターンTheの最初の出現を検出し、ファイルの残りの行をすぐに出力します
上記のコードを実行すると、次の結果が得られます。
また、コンマ(、)演算子を使用して複数のパターン範囲を指定することもできます。 次の例では、パターンTwoと巡礼の間に存在するすべての行を印刷します。
上記のコードを実行すると、次の結果が得られます。
さらに、パターン範囲内でplus(+)演算子を使用できます。 次の例では、パターンTwoの最初の出現を検出し、その後に次の4行を出力します。
上記のコードを実行すると、次の結果が得られます。
ここでは、SEDに慣れるためのいくつかの例を提供しました。 自分でいくつかの例を試してみると、いつでも詳細を知ることができます。