- 869 名前:デフォルトの名無しさん mailto:sage [2018/12/30(日) 08:42:00.02 ID:btIksil/0.net]
- 区切り文字を指定して文字列を分割するときに
区切り文字が一種類の場合はcut(1)とかを使うし 区切り文字がBREで表わされるような場合はAWKを使うけど 各フィールド毎に特定の区切り文字があるような時はどうすればいいかな。 今やろうとしていることはISO 8601形式の日付を空白区切りに分解することで 2018-12-30T08:36:50+09:00 ↑こういう文字列を 2018 12 30 08 36 50 + 09 00 ↑こういう空白区切りに分解したい。 その為には「第1,2,3フィールドはハイフン,第4フィールドは文字T,第5,6,7フィールドはコロンで分割する」 っていう具合の処理を考えないといけない。 正直,sedを使えばいいんだけど,もうちょっとスマートな方法があれば教えてほしい……。 sedだと↓ sed -n -e 's/\([[:digit:]]\{4\}\)-\([[:digit:]]\{2\}\)-\([[:digit:]]\{2\}\)T\([[:digit:]]\{2\}\):\([[:digit:]]\{2\}\):\([[:digit:]]\{2\}\)\([+-]\)\([[:digit:]]\{2\}\):\([[:digit:]]\{2\}\)/D:\1\2\3\4\5\6\7\8'"'"'\9/1p' ↑こんなことになるw
|

|