私JSON配列内の2つの項目の値を取得するために使用したいファイルgrep
。foo
値からデータを取得しようとしていますが、bar
問題は値もbar
一致するため、megabar
optionでgrepする必要があることです-w
。値を注文する
必要があるため、両方を見つけようとすると問題が発生します。grep
またはもう一つ。
~からこれ問題は私が探しているものに近づきましたが、結果は次のとおりです。
grep -E '(foo|-w bar)' file
"foo": "59766",
"foo": "59770",
"foo": "59774",
"foo": "59778",
"foo": "59782",
"foo": "59786",
これを行う方法についてのアイデアはありますか?
ベストアンサー1
これ単語の境界と同様の効果がありますが、-w
式の一部として使用できます。
'\b' は、
単語の端の空の文字列と一致します。
[...]
'\<' は
単語の先頭の空の文字列と一致します。
'\>' は
単語の末尾の空の文字列と一致します。
bar
完全な単語の場合にのみ一致しますが、foo
どこでも一致します(長い単語内を含む)。
grep -E 'foo|\<bar\>'