2

複数の行にまたがるパターンに一致する正規表現が必要です。たとえば、特定の作成者の最初の git コミットを取得する必要があります。

git を使用してこれを行う方法があることは知っていますが、正規表現で行いたいと考えています。

commit 9a06fd844952587774632f470442288e422910da
Author: Mark Gitter <mark.gitter@microsoft.com>
Date:   Tue Jun 11 17:13:26 2013 +0300

    Random git comment.

この正規表現commit [a-z0-9]*はコミット sha-1 と一致しますが、次の行で検索を開始できません。http://gskinner.com/RegExr/でテストしています

合わせたい

commit 9a06fd844952587774632f470442288e422910da
Author: Mark Gitter

何か案は?

4

2 に答える 2

2

一部の著者名にはスペースが含まれているため<、前のスペースを含めずに記号まですべてをキャプチャできます。

commit ([a-z0-9]*)\s*Author:(\s*[^<]+)(?<!\s)

これが概念実証です。

于 2013-06-12T07:10:19.150 に答える