私はビルドプロセス中にそれをキャプチャできるように、さまざまなPythonコーディング防止パターンを探しています。新しい行を一致させるためにgrepを利用するのに問題があります。
検索するアンチパターン:
except:
pass
以下のパターンはIntellijではうまく機能しますが、grepを適用すると機能しません。
except:\s+pass
これを達成する方法を提案します。
答え1
pcregrep
Perl互換正規表現GREPを表すソリューションです。
pcregrep -M "^except:\n\s+pass$" file
ここでは、-M, --multiline
複数行にわたるパターンマッチングを許可します。
正規表現は、行の先頭にあるテキスト:except:
、改行文字、ゼロ個以上の空白(最大数の空白と一致)、行末のpass
テキストを一致させます。