人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

以下のcsvファイルがあるとします。

1,111,aaa,山
2,222,bbb__,川
3,333,ccc,海

ここからawkで

aaa
bbb
ccc

bbb__のアンダーバーを取り除いて上のように抽出する方法をお教え願えませんでしょうか。

●質問者: porinki07
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:333 aaa AWK CCC CSV
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● dev_zer0
●100ポイント

http://www.linux.or.jp/JM/html/GNU_gawk/man1/gawk.1.html

無理矢理awkだけで行うと以下のようになります。

awk 'BEGIN { FS=","}{str = $3; gsub(/_/, "", str); print str}'

デフォルトのフィールドセパレータは空白なのでカンマにし、

3番目のデータを変数strに入れて、組み込み関数gsub()で"_"を削除します

# sub()は最初に一致した文字しか置換しません


でも普通はsedと組み合わせて使います

awk 'BEGIN { FS=","}{ print $3 }' | sed 's/_//g'

上記のコマンドも同様の出力結果が得られます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ