私は次のコマンドを実行しました。
grep -i 'bro*' shows.csv
そしてそれを出力として提供
1845307,2 Broke Girls,2011,138,6.7,89093
1702042,An Idiot Abroad,2010,21,8.3,29759
903747,Breaking Bad,2008,62,9.5,1402577
2249364,Broadchurch,2013,24,8.4,89378
1733785,Bron/Broen,2011,38,8.6,56357
2467372,Brooklyn Nine-Nine,2013,145,8.4,209571
7569592,Chilling Adventures of Sabrina,2018,36,7.6,69041
7221388,Cobra Kai,2018,31,8.7,72993
1355642,Fullmetal Alchemist: Brotherhood,2009,69,9.1,111111
118360,Johnny Bravo,1997,67,7.2,32185
455275,Prison Break,2005,91,8.3,465246
115341,Sabrina the Teenage Witch,1996,163,6.6,33458
1312171,The Umbrella Academy,2019,20,8,140800
3339966,Unbreakable Kimmy Schmidt,2015,51,7.6,61891
bro
何が問題なの?実際、o
彼は<ブレーキングバッド>にも出演しなかった。もう一度試しましたが、同じ結果が出ました。最後の文字は考慮しません。私が書いた方法に問題があるのでしょうか?
以下からshow.csvファイルをダウンロードできます。https://cdn.cs50.net/2021/x/seminars/linux/shows.csv
答え1
あなたのコードはo*
「ゼロ以上の発生o
」を意味します。正規表現をglob構文(o*
「o
文字1個と0個以上」を意味)と混同しているようです。
その後には正確にゼロ文字がBreaking Bad
あるので一致します(大文字と小文字を区別しません)。o
Br
bro*
grep -i bro shows.csv
(私の考えでは)あなたが望むようにやります。
答え2
ここで、o*は「0個以上」を意味します。アスタリスクのある希望の出力が必要な場合は、次のようにoの後に任意の文字を追加できます。
$ grep -i "broa*" show.csv
1845307,2 破産した少女8 。 6,56357 2467372、ブルックリンナイン-ナイン、2013、145、8.4、209571 1355642、スチールの錬金術師:ブラザーフード、2009、69、9.1、111111
それ以外の場合はgrep -i "bro" shows.csv
動作します。
HTH。