特定の長さのすべての文字列を解析しますか?

特定の長さのすべての文字列を解析しますか?

10年後のメールアーカイブをエクスポートしましたが、容量がかなり大きいです。

ビットコイン秘密鍵を取得するために、64文字の長さの文字列のすべてのテキストを解析したいと思います。

特定の長さの文字列を解析する方法は?

ベストアンサー1

0-916進形式の256ビット数(範囲内の64文字 - ビットコイン秘密鍵に使用可能な形式の1つ)を検索する場合は、A-F次のことを行う必要があります。

egrep -aro '\<[A-F0-9]{64}\>' files and dirs ...

オプションを追加するか、一部のキーが小文字の場合は-i範囲​​も含めます。a-f

同じクラスで指定された長さの文字列を見つける一般的な問題の場合は、オプションでGNU grepで使用できるpcre regexpsを使用することをお勧めします-P。たとえば、最小長が 2、最大長が 4、大文字以外の文字で区切られた文字セットで大文字を検索するには、次の手順を実行します。

echo ÁRVÍZtűrő tükörFÚRÓgép |
   LC_CTYPE=en_US.UTF-8 grep -Po '(?<!\p{Lu})\p{Lu}{2,4}(?!\p{Lu})'
FÚRÓ

小文字、スペース以外の文字など\p{Lu}に置き換えます。より\p{Ll}\Sここそしてここ完全なリストをチェックしてください。

(?<!...)そして(?!...)否定的な後ろを振り返って前を見て幅0たとえば、(?<!<)\w(?!>)andで囲まれていない場合、「単語」文字は一致します。幅0のアサーションは を介し​​て実装できます。<>\<vi(?<!\w)(?=\w)

おすすめ記事