コンテンツにスキップ

Template:Age in years and days

テンプレートの解説[表示] [編集] [履歴] [キャッシュを破棄]

このテンプレートは非常に複雑な計算式を用いており、記事内の多数の場所で使用されています。変更する際はサンドボックスで充分なテストを実施後に変更の適用をお願いします。

これは何?

[編集]

2つの指定された年月日を比較して年月を割り出すテンプレート。

2つめの年月日パラメータが省略された場合、現在までの日数と比較する。

toパラメータで以下の接続詞の切り替えが出来る。省略(デフォルト)は「 + 」
  • to=to - ○年と☓日
  • to=none - ○年☓日
  • 省略 - ○年 + ☓日
ageパラメータで以下の接尾詞の切り替えが出来る。省略(デフォルト)は「年」
  • age=yes - ○歳 + ☓日
  • age=no - ○年 + ☓日
  • 省略 - ○年 + ☓日
留意点
  • 結果が使用者の期待と1日ずれているかも知れません。説明を脚注[1]に示します。
  • うるう年が絡むと挙動が怪しく見えることがあります。説明を脚注[2]に示します。

使い方

[編集]
  • {{age in years and days|year1|month1|day1|year2|month2|day2|to=to}}
  • {{age in years and days|year1|month1|day1|to=none}}
  • {{age in years and days|year1|month1|day1}}

[編集]
  • {{age in years and days|1989|12|28|2015|8|14}}
    • 25年 + 229日
  • {{age in years and days|1989|12|28}}
    • 34年 + 340日
  • {{age in years and days|1989|12|28|1990|12|29|to=to}}
    • 1年と1日
  • {{age in years and days|1989|12|28|1990|12|29|to=none}}
    • 1年1日
  • {{age in years and days|1989|12|28|2015|8|14|age=yes}}
    • 25歳 + 229日
  • {{age in years and days|{{subst:CURRENTYEAR}}|{{subst:CURRENTMONTH}}|{{subst:CURRENTDAY2}}|to=to}}
    • subst展開で日付を入力している為、貼り付けてから、どれだけ経過したかが分かります。
尚、この例が追加されてから、n年とn日が経過しています。

脚注

[編集]
  1. ^ 結果が期待と1日ずれることについて
    例)
    意図: 2001年1月1日から2001年1月3日まで
    記述: {{age in years and days|2001|1|1|2001|1|3}}
    結果: 2日 (「3日」と期待する使用者も多いでしょう)
  2. ^ うるう年の挙動について
    例)
    • ケース1
      意図: 2004年2月29日~2005年3月1日
      結果: 1年 + 0日
    • ケース2
      意図: 2004年3月1日~2005年3月1日
      結果: 1年 + 0日
    ケース2はケース1よりも始点が+1日されているので、結果は-1日されるはずです。しかし、結果は同じ出力になっています。
    この挙動は年齢計算ニ関スル法律の計算結果とは一致しており、間違いと言えません。
    上述の例の周辺の表
    終点
    2005年2月27日 2005年2月28日 2005年3月1日 2005年3月2日 2005年3月3日
    始点 2004年2月27日 1年 + 0日 1年 + 1日 1年 + 2日 1年 + 3日 1年 + 4日
    2004年2月28日 365日 1年 + 0日 1年 + 1日 1年 + 2日 1年 + 3日
    2004年2月29日 364日 365日 1年 + 0日(ケース1) 1年 + 1日 1年 + 2日
    2004年3月1日 363日 364日 1年 + 0日(ケース2) 1年 + 1日 1年 + 2日
    2004年3月2日 362日 363日 364日 1年 + 0日 1年 + 1日
    2004年3月3日 361日 362日 363日 364日 1年 + 0日