質問
だから私はこのようなパターンを探しています:
size = '0x0'
ログファイル内の-ただし、大きなサイズ(4桁以上)にのみ興味があります。次の正規表現は、EditPadPro(素晴らしいツールBTW)でうまく機能します
size = '0x [0-9a-fA-F] {4、}
しかし、同じ正規表現はawkで動作しません-{4、}の繰り返しがそれを台無しにしているようです。 WinGrepと同じ-正規表現の達人からのアイデア?ありがとう!
解決
実際には、警告付きでawkを使用できます。
次のページで説明したように、間隔式({4、})は標準にないため、機能させるには特別なコマンドラインオプション(--re-interval)が必要です。
http://kansai.anesth.or.jp/gijutu/ awk / gawk / gawk_28.html
最後に、次のようなものが必要になります。
awk --re-interval "/size='0x[0-9a-fA-F]{4,}'/" thefile
これにより、一致する行が出力されます。
他のヒント
{4、}構文のエレガントな代替手段は知りませんが、希望する環境で機能しない場合は、このいハックに頼ることができます:
size='0x[0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F]+
これがお役に立てば幸いです!
アダム
最後のアポストロフィを忘れないでください。
'
所属していません StackOverflow