質問編集履歴

2

追記② fieldwidthの指定バイト数について

2018/05/29 16:24

投稿

wwwww
wwwww

スコア41

test CHANGED
File without changes
test CHANGED
@@ -51,3 +51,17 @@
51
51
  "あい "の場合もあれば、("あい うえ"が抜かれてしまう)
52
52
 
53
53
  " "の場合もあります(" "の正しい形で抜かれる)
54
+
55
+
56
+
57
+ ### 追記②
58
+
59
+ > KojiDoi さん
60
+
61
+ 早速のご回答、ありがとうございます!!
62
+
63
+
64
+
65
+ > 文字列が「あいう」なのにfieldwidthが5だったりする ケースが有りえる
66
+
67
+ 全角文字が含まれる項目はすべて偶数になっています(全角文字を2バイトで扱わないといけない前提?)。ですので奇数の場合がありません。

1

追記…バイト数固定で抜き出したいです。

2018/05/29 16:24

投稿

wwwww
wwwww

スコア41

test CHANGED
File without changes
test CHANGED
@@ -27,3 +27,27 @@
27
27
  また、cat sample.csv | sed -e ’s/^(.\{2\})(.\{4\})(.\{2\})(.\{6\})…/“\1”,”\2”,”\3”,”\……
28
28
 
29
29
  としたら、日本語が出力から消え、スペース に謎の数値が入っていました。
30
+
31
+
32
+
33
+ ### 追記
34
+
35
+ 皆様 ご回答、ありがとうございます!
36
+
37
+
38
+
39
+ 言葉足らずですいません。。
40
+
41
+ 文字コードへのこだわりはありません。
42
+
43
+ バイト数が(配列の中身を考慮しており)固定で、半角文字は1バイト、全角文字は2バイトで抜き出してほしいです。加工元の固定長ファイルは、2行目以降もすべて同じバイト数で構成されています。
44
+
45
+
46
+
47
+ 例えばFIELDWIDTHSが6の箇所にて、全角文字と半角スペースが混じっているため、
48
+
49
+ "あいう"という文字列の場合もあれば、("あいうえおか"で抜き出されてしまい、ここ以降がずれてしまう)
50
+
51
+ "あい "の場合もあれば、("あい うえ"が抜かれてしまう)
52
+
53
+ " "の場合もあります(" "の正しい形で抜かれる)