teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

補足解釈およびコメントをいただいて

2020/07/10 00:50

投稿

mfi.sub.jp
mfi.sub.jp

スコア6

answer CHANGED
@@ -48,4 +48,43 @@
48
48
  0004 xxxxx@xxxx.ne.jp
49
49
  0005 xxxxx@xxxx.ne.jp
50
50
 
51
- ```
51
+ ```
52
+
53
+
54
+ ----------------------------------
55
+ 補足解釈およびコメントをいただいて
56
+ ----------------------------------
57
+
58
+ ```awk
59
+ #foo2.awk
60
+
61
+ BEGIN {
62
+ RS = "\n\n\n";
63
+ FS = "\n";
64
+ }
65
+
66
+ /^ID:/ {
67
+ sub(/ID: /, "", $1);
68
+ sub(/NAME: /, "", $2);
69
+ sub(/MAIL: /, "", $3);
70
+ recfile = "rec" sprintf("%04d", ++c) ".txt"
71
+ printf("%s\n", $1 "/" $2 "/" $3) > recfile;
72
+ }
73
+ ```
74
+ ```awk
75
+ awk -f foo2.awk data.txt
76
+
77
+ 実行結果
78
+ rec0001.txt
79
+ 11223344556677/XXXX-XXX/xxxxx@xxxx.ne.jp
80
+ rec0002.txt
81
+ 112233445566/XXXXXX-XX/xxxxx@xxxx.ne.jp
82
+ rec0003.txt
83
+ 1122/XXX-XXX/xxxxx@xxxx.ne.jp
84
+ rec0004.txt
85
+ 1234567/XX-XXXXX/xxxxx@xxxx.ne.jp
86
+ rec0005.txt
87
+ 1122334455/XXXXX-XXX/xxxxx@xxxx.ne.jp
88
+ ```
89
+
90
+ こんなんでいいのでしょうか。読解力なくてすみません。