めぐみです。
tatsu99さま、先日は親切にアドバイス頂きまして本当にありがとうございました。
恐れ入りますまた追記で質問させて頂きたいことがありましてご連絡させて頂きました。
複雑そうなので無理そうでしたら読み飛ばしてくださいませ。
先日アドバイス頂いた出力結果にプラスして以下のデータを計算して出力させることは可能でしょうか?昭和と平成の処理です。
1.B.txtの1行目を参照します。
2.1926から1989の場合:
下二桁マイナス25にします。
例えば1986の場合、1986-25=61
1990から1999以降の場合:
下二桁マイナス88にします。
例えば1996の場合、1996-88=8
2000以降の場合:
下三桁000を100と考えてそれにマイナス88にします。
例えば2013の場合、136-88=25
それ以外のデータは無視します。
3.追加の出力データ
例えばB.txtのデータが下記のような場合
1986
3
6
以下のデータも追加出力したいです(A.txtがKATOの場合)。
kato6136
kato61
kato610306
6136kato
61kato
610306kato
610306
6136
61
以上、よろしくお願いいたします。
いつも誠意あるご回答をただ来まして本当にありがとうございます。
めぐみ
No.3ベストアンサー
- 回答日時:
以下のようにしてください。
----------------------------------------
$file_a = shift(@ARGV);
$file_b = shift(@ARGV);
open FHA,$file_a or die("can't open $file_a");
@data_a = ();
while($line=<FHA>){
chomp($line);
push @data_a,$line
}
close FHA;
open FHB,$file_b or die("can't open $file_b");
@data_b = ();
while($line=<FHB>){
chomp($line);
push @data_b,$line
}
close FHB;
#------------------追加開始---------
# 西暦を和暦に変換(昭和と平成のみ)
$wanen = $data_b[0];
if ($wanen >= 1926 && $wanen <= 1989){
$wanen -= 1925;
}elsif ($wanen >=1990){
$wanen -= 1988;
}
#------------------追加終了---------
foreach $da (@data_a){
printf("%s%d%d%d\n",$da,$data_b[0],$data_b[1],$data_b[2]);
printf("%s%d\n",$da,$data_b[0]);
printf("%s%d%d\n",$da,$data_b[1],$data_b[2]);
printf("%s\n",$da);
printf("%s%04d%02d%02d\n",$da,$data_b[0],$data_b[1],$data_b[2]);
printf("%s%02d%02d\n", $da,$data_b[1],$data_b[2]);
printf("%d%d%d%s\n",$data_b[0],$data_b[1],$data_b[2],$da);
printf("%d%s\n",$data_b[0],$da);
printf("%d%d%s\n",$data_b[1],$data_b[2],$da);
printf("%s\n",$da);
printf("%04d%02d%02d%s\n",$data_b[0],$data_b[1],$data_b[2],$da);
printf("%02d%02d%s\n",$data_b[1],$data_b[2],$da);
#------------------追加開始---------
printf("%s%d%d%d\n",$da,$wanen,$data_b[1],$data_b[2]);
printf("%s%d\n",$da,$wanen);
printf("%s%02d%02d%02d\n",$da,$wanen,$data_b[1],$data_b[2]);
printf("%d%d%d%s\n",$wanen,$data_b[1],$data_b[2],$da);
printf("%d%s\n",$wanen,$da);
printf("%02d%02d%02d%s\n",$wanen,$data_b[1],$data_b[2],$da);
#------------------追加終了---------
}
printf("%d%d%d\n",$data_b[0],$data_b[1],$data_b[2]);
printf("%d\n",$data_b[0]);
printf("%d%d\n",$data_b[1],$data_b[2]);
printf("%04d%02d%02d\n",$data_b[0],$data_b[1],$data_b[2]);
printf("%02d%02d\n",$data_b[1],$data_b[2]);
printf("%s%s\n",$data_a[0],$data_a[1]);
printf("%s%s\n",$data_a[1],$data_a[2]);
printf("%s%s\n",$data_a[2],$data_a[0]);
printf("%s%s\n",$data_a[1],$data_a[0]);
printf("%s%s\n",$data_a[0],$data_a[2]);
printf("%s%s\n",$data_a[2],$data_a[1]);
#--------追加開始-----------------
printf("%02d%02d%02d\n",$wanen,$data_b[1],$data_b[2]);
printf("%d%d%d\n",$wanen,$data_b[1],$data_b[2]);
printf("%d\n",$wanen);
#--------追加終了-----------------
----------------------------------------------------
追加開始~追加終了が今回の追加分です。
tatsu99さま
ご連絡遅れて大変申し訳ありませんでした!
完璧でした!
本当に本当にありがとうございました!
すごく助かりました。
今後ともよろしくお願いいたします。
めぐみ
No.2
- 回答日時:
補足要求です。
前回の結果は-------------------------
kato198636
kato1986
kato36
kato
kato19860306
kato0306
198636kato
1986kato
36kato
kato
19860306kato
0306kato ・・・・・・・A
megumi198636
megumi1986
megumi36
megumi
megumi19860306
megumi0306
198636megumi
1986megumi
36megumi
megumi
19860306megumi
0306megumi・・・・・・・・B
meguchan198636
meguchan1986
meguchan36
meguchan
meguchan19860306
meguchan0306
198636meguchan
1986meguchan
36meguchan
meguchan
19860306meguchan
0306meguchan・・・・・・・C
198636
1986
36
19860306
0306・・・・・・・・・・・D
katomegumi
megumimeguchan
meguchankato
megumikato
katomeguchan
meguchanmegumi
---------------------------------
ですが、
kato6136
kato61
kato610306
6136kato
61kato
610306kato
は、A.TXTの内容を含むので、繰り返しになります。
・・・・Aの後ろに追加でよいですか?
同様に、megumi6136の分は・・・・・Bの後に追加になります。
610306
6136
61
の追加は、・・・・・Dの後ろでよいですか?
以上、補足をお願いします。
tatsu99さま
早速のご連絡ありがとうございます。
おっしゃるとおりの方法で問題ございません。
何とぞよろしくお願いいたします。
めぐみ
No.1
- 回答日時:
可能です.
2 はおかしな処理だけど.
すみません、先ほど出力例で昭和の場合の例を出しましたが
1996の場合、平成ですので下記のようにしたいです(平成処理)。
3.追加の出力データ
例えばB.txtのデータが下記のような場合
1996
3
6
以下のデータも追加出力したいです(A.txtがKATOの場合)。
1996が8と08になります。
kato836
kato0836
kato8
kato08
kato80306
kato080306
836kato
0836kato
8kato
08kato
80306kato
080306kato
08kato
80306
080306
836
8
平成処理になると出力結果が少しだけ多くなってしまいます。
すみません、頂いたご連絡の返信に新たに平成処理が増えてしまったようで。
恐れ入りますが何とぞよろしくお願いいたします。
めぐみ
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/12】 急に朝起こしてきた母親に言われた一言とは?
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・好きな「お肉」は?
- ・あなたは何にトキメキますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・チョコミントアイス
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・あなたの習慣について教えてください!!
- ・ハマっている「お菓子」を教えて!
- ・高校三年生の合唱祭で何を歌いましたか?
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・家の中でのこだわりスペースはどこですか?
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
printfの%eで指数部分の桁数を...
-
int型(2バイト)データの分割
-
stable diffusionのエラー
-
VBA構文で分の表示を 00分と表...
-
CTime.Formatが(NULL)に??
-
c言語での wavファイルの編集(...
-
'dataType' 引数を Null にする...
-
エクセルシート名の制限を変更...
-
UTF-8で5~6バイトになる文字コ...
-
10Mバイトて文字数に すると何...
-
.netで、ibm漢字で書かれたテキ...
-
char str[256]の256の意味は?
-
C言語でファイルをよんだあとの...
-
Rstudioによるテキストマイニン...
-
JavaScriptの条件分岐について(...
-
VAX浮動小数点形式
-
DataGridViewの特定列に入力さ...
-
PHPのCookieが有るか無いかで、...
-
文字コードの利点・欠点について
-
URLは最高何文字まで可能なので...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
printfの%eで指数部分の桁数を...
-
ポインター引数の関数でコンパ...
-
stable diffusionのエラー
-
エクセルVBA:日付データの変換...
-
C#でのswitch文
-
CreateProcessでの環境変数の設...
-
RegQueryValueExでの2バイト文字
-
'dataType' 引数を Null にする...
-
【Excel VBA】10進数を2進数に...
-
matlabのソースコードをpython...
-
C++ multipart/form-data f
-
Cのプログラムがどうしても動き...
-
テキストファイルの結合について
-
int型(2バイト)データの分割
-
Excel VBA グラフ作成のとき...
-
C言語 構造体の名前欄?を小文...
-
CSVファイルの行と列のセルって...
-
C++/CLIのオブジェクト型配列
-
C言語 ファイル内のデータと入...
-
C言語についてです! 同じ年の...
おすすめ情報