大文字でマークされた単語を含むステートメントを含むファイルがあります。たとえば、次のようになります。
public final Foo BAR;
これらの記述はすべて均一ではありません。一行で大文字を含む単語だけを見つける方法はありますか?私は大文字を含む行を見つける方法を知っていますが、それは私が望むものではありません。大文字に一致する単語のみが必要です。ありがとうございます!
ベストアンサー1
実際に-o
スイッチを使用すると、GNUはgrep
一致するものだけを返します。どうですか?
grep -oP "\w*[A-Z]+\w*" yourfile.txt
この正規表現は大文字を含む単語と一致します。どこかにその中でも必ずしも始まりではありません。異なる場合は、ニーズに合わせて調整する必要があります。
以下で説明するように、これは最も移植性の高い解決策ではないかもしれません。 Perlの移植可能な選択肢は次のとおりです。
perl -nE 'say $1 while /(\w*[A-Z]+\w*)/g' yourfile.txt