grepでcsvファイルの特定列から抽出する

grepは行中の文字列を探し出すわけだが,csvの特定列にある文字列だけを対象にしてgrepするときにはどうすればよいか。
grep正規表現が使えるようなので,正規表現csvを記述すれば何とかなりそう。

grep -e ".*\,.*\,string\," file.txt

こうすることで,file.txtというファイルの3番目の列のstringという文字列を検索して表示してくれる。
#本当にこんなんでいいのかな(^^;?