wで始まるすべての単語をどのようにgrepまたはsedしますか?

wで始まるすべての単語をどのようにgrepまたはsedしますか?

grepまたはsedを使用して練習する必要があるストーリーを含むファイルがあります。私はこれを試してegrep -i '^w.' file.txtほとんどの単語を得ましたが、wで始まるすべての単語が必要です(「Paperwork」は機能せず、「working」は機能します)。

ベストアンサー1

\bおそらく単語の始まり()を分離して単語の文字を識別するには正規表現が必要です。例を\S参照してください。文書もっと学ぶ。だからあなたはコマンドを使うことができます

$ grep -oE '\bw\S*' inputfile

を使用すると、-o結果は一致する部分、新しい行の各一致(1つの入力行でも)、および-E「拡張正規表現」使用機能(使用と同じegrep)になります。

[[:alpha:]]代わりに、より厳格な「単語」マッチングを使用できます\S

$ grep -oE '\bw[[:alpha:]]*' inputfile

これにより、英語の文字セットから「w」で始まる「単語」(文字シーケンス)が生成されます。

おすすめ記事