自動化厨のプログラミングメモブログ│CODE-LIFE

Python/ExcelVBA/JavaScript/Raspberry Piなどで色んなことを自動化

CSVファイルの数字と日付データからのみダブルクォートを削除するsedコマンド

sedコマンドええやん!

メモっとかないと絶対忘れるので記録。

# 整数と浮動小数点数のダブルクォーテーションだけを削除するsedコマンド
echo -e "\"id\",\"item\",\"price\",\"taxrate\",\"total\"\n"\
"\"0001\",\"apple\",\"1000\",\"1.08\",\"1080\"\n"\
| sed -e 's/\"\([0-9|.]*\?\)\"/\1/g'
 

# テキストファイルに対して実行する場合
# sed -i 's/\"\([0-9|.]*\?\)\"/\1/g' data.csv
 
# 日付データのダブルクォーテーションだけを削除するsedコマンド
echo "\"2019/07/29\",\"2019/7/9\",\"2019年7月29日\""
echo "\"2019/07/29\",\"2019/7/9\",\"2019年7月29日\"" | sed -e 's/\"\([0-9]\{4\}\/[0-9]\{1,2\}\/[0-9]\{1,2\}\)\"/\1/g'
 
# テキストファイルに対して実行する場合
# sed -i 's/\"\([0-9]\{4\}\/[0-9]\{1,2\}\/[0-9]\{1,2\}\)\"/\1/g' data.csv
 

念の為、実利用する前にhttps://paiza.io とかで実際の動作を見てみてください。