跳转到内容

模块:Age/doc

维基百科,自由的百科全书

这是Module:Age的文档页面

重要:中文时间应该无空格,切忌照抄!

abbr_infant不需要。新增abbr_duration,用于显示时间(XX年而不是XX岁)。

{{nts}}表示可排序的。

使用模板

使用模块:Age的模板包括:

Template Required wikitext
{{extract}} {{#invoke:age|extract}}
{{gregorian serial date}} {{#invoke:age|gsd}}
{{JULIANDAY}} {{#invoke:age|JULIANDAY}}
{{time interval}} {{#invoke:age|time_interval}}
{{age in days}} {{#invoke:age|age_generic|template=age_days}}
{{age in days nts}} {{#invoke:age|age_generic|template=age_days_nts}}
{{duration in days}} {{#invoke:age|age_generic|template=duration_days}}
{{duration in days nts}} {{#invoke:age|age_generic|template=duration_days_nts}}
{{age}} {{#invoke:age|age_generic|template=age_full_years}}
{{age nts}} {{#invoke:age|age_generic|template=age_full_years_nts}}
{{age in years}} {{#invoke:age|age_generic|template=age_in_years}}
{{age in years nts}} {{#invoke:age|age_generic|template=age_in_years_nts}}
{{age for infant}} {{#invoke:age|age_generic|template=age_infant}}
{{age in months}} {{#invoke:age|age_generic|template=age_m}}
{{age in weeks}} {{#invoke:age|age_generic|template=age_w}}
{{age in weeks and days}} {{#invoke:age|age_generic|template=age_wd}}
{{age in years and days}} {{#invoke:age|age_generic|template=age_yd}}
{{age in years and days nts}} {{#invoke:age|age_generic|template=age_yd_nts}}
{{age in years and months}} {{#invoke:age|age_generic|template=age_ym}}
{{age in years, months and days}} {{#invoke:age|age_generic|template=age_ymd}}
{{age in years, months, weeks and days}} {{#invoke:age|age_generic|template=age_ymwd}}
{{birth date and age}} {{#invoke:age|birth_date_and_age}}

重定向

Template Redirects to
{{hla}} {{age in years, months and days}}
{{age in months, weeks and days}} {{age in years, months, weeks and days}}
{{bda}} {{birth date and age}}
{{dda}} {{death date and age}}
{{gsd}} {{gregorian serial date}}

The age templates expect the older date to be first. The implementations of age_in_years and age_in_years_nts display an error message if that is not the case. If similar checking is wanted for other templates, negative=error can be added to the invoke. For example, {{age}} might use:

  • {{#invoke:age|age_generic|template=age_full_years|negative=error}}

If negative=error does not apply, a negative difference is indicated with a minus sign (−).

日期格式

Dates can use numbered or named parameters to specify year/month/day. Alternatively, a full date can be entered in a variety of formats. For example:

  • {{age in years and months|year1=2001|month1=1|day1=10|year2=2012|month2=2|day2=20}} → 11年1个月
  • {{age in years and months|year=2001|month=1|day=10|year2=2012|month2=2|day2=20}} → 11年1个月
  • {{age in years and months|2001|1|10|2012|2|20}} → 11年1个月
  • {{age in years and months|2001-1-10|2012-2-20}} → 11年1个月
  • {{age in years and months|10 Jan 2001|20 Feb 2012}} → 11年1个月
  • {{age in years and months|January 10, 2001|Feb 20, 2012}} → 11年1个月

If the first or second date is omitted, the current date is used. For example:

  • {{age in years and months|year2=2012|month2=2|day2=20}} → −12年9个月
  • {{age in years and months||||2012|2|20}} → −12年9个月
  • {{age in years and months||2012-2-20}} → −12年9个月
  • {{age in years and months||20 Feb 2012}} → −12年9个月
  • {{age in years and months||Feb 20, 2012}} → −12年9个月
  • {{age in years and months|year1=2001|month1=1|day1=10}} → 23年10个月
  • {{age in years and months|year=2001|month=1|day=10}} → 23年10个月
  • {{age in years and months|2001|1|10}} → 23年10个月
  • {{age in years and months|2001-1-10}} → 23年10个月
  • {{age in years and months|10 Jan 2001}} → 23年10个月
  • {{age in years and months|January 10, 2001}} → 23年10个月

参数

以下选项可用:

参数 描述
age=off 区分时间与岁数,显示为XX年或XX岁。(除{{age in years and days}}、{{age in years and days nts}}、{{age for infant}}默认on)
duration=on The finishing date is included in the result; that adds one day to the age.
fix=on Adjust invalid time units. See Template:Extract.
format=commas A value of 1,000 or more is displayed with commas.
format=raw Numbers are displayed without commas and negative numbers are displayed with a hyphen for {{#expr}}. In addition, {{age}} outputs a plain number and will not include a span to indicate if the result relies on the current date.
format=cardinal Display the resulting number using words such as "five" instead of 5. See below.
format=ordinal Display the resulting number using words such as "fifth" instead of 5. See below.
range=dash Accept a year only, or a year and month only, and show a range of ages with an 连接号 (–).
range=yes Accept a year or year/month, and show the range with "or".
range=no Accept a year only, or year/month, but show only a single age as if full dates had been entered.
round=on The age is rounded to the nearest least-significant time unit.
sc=on A serial comma is used (only useful when three or more values are displayed).
sc=yes Same as sc=on.
show=hide The age is not displayed; may be useful with sortable=on.
sortable=on Insert a hidden sort key before the result (for use in sortable tables).
sortable=table Insert a sort key using table syntax data-sort-value="value"|.
sortable=debug Same as sortable=on but the sort key is displayed for testing.
sortable=off No sort key (can override the default for a template like {{age nts}}).

Examples using the range parameter follow.

  • {{age in years and months|year=2001|month=1|year2=2012|month2=2|range=yes}} → 11年0或1个月
  • {{age in years and months|2001|1||2012|2|range=yes}} → 11年0或1个月
  • {{age in years and months|Jan 2001|Feb 2012|range=yes}} → 11年0或1个月
  • {{age in years and months|Jan 2001|Feb 2012|range=dash}} → 11年0—1个月
  • {{age in years and months|Jan 2001|Feb 2012|range=no}} → 11年1个月 (assume 1 Jan 2001 to 1 Feb 2012)
  • {{age in years and months|12 Jan 2001|Feb 2012|range=no}} → 11年1个月 (assume 12 Jan 2001 to 12 Feb 2012)
  • {{age in years and months|2001|2012|range=no}} → 11年 (assume 1 Jan 2001 to 1 Jan 2012)
  • {{age in years and months|2001|23 Feb 2012|range=no}} → 11年 (assume 23 Feb 2001 to 23 Feb 2012)

The sort key is based on the age in days, and fractions of a day if a time is specified.

  • {{age in years and months|10 Jan 2001|20 Feb 2012|sortable=debug}}7003405800000000000♠11年1个月
  • {{age in years and months|10 Jan 2001|6:00 am 20 Feb 2012|sortable=debug}}7003405825000000000♠11年1个月
  • {{age in years and months|10 Jan 2001|6:00 am 20 Feb 2012|sortable=debug|show=hide}}7003405825000000000♠

An extra day is added for a duration.

  • {{age in years and months|20 Jan 2001|19 Feb 2012}} → 11年 (one day short of 11 years, 1 month)
  • {{age in years and months|20 Jan 2001|19 Feb 2012|duration=on}} → 11年1个月

The least-significant time unit can be rounded.

  • {{age in years and months|20 Jan 2001|10 Feb 2012}} → 11年
  • {{age in years and months|20 Jan 2001|10 Feb 2012|round=on}} → 11年1个月 (round to nearest month)

Large numbers can be formatted with commas.

  • {{age in years and months|120|2012|format=commas|range=yes}} → 1,891或1,892年
  • {{age in years and months|120|2012|format=commas|range=dash}} → 1,891—1,892年

基数词与序数词

The templates that use age_generic can display numbers in words rather than using numerals. The result can be a 基数词 (such as "五") or an 序数词 (such as "第五"). The first letter can be in uppercase, and US spelling of numbers can be used. Examples:

  • {{age|1898|01|01|2018|02|01|format=cardinal}} → one hundred and twenty
  • {{age|1898|01|01|2018|02|01|format=cardinal_us}} → one hundred twenty
  • {{age|1898|01|01|2018|02|01|format=Cardinal}} → One hundred and twenty
  • {{age|1898|01|01|2018|02|01|format=Cardinal_us}} → One hundred twenty
  • {{age|1898|01|01|2018|02|01|format=Ordinal}} → One hundred and twentieth
  • {{age|1898|01|01|2018|02|01|format=Ordinal_us}} → One hundred twentieth
  • {{age|1898|01|01|2018|02|01|format=ordinal}} → one hundred and twentieth
  • {{age|1898|01|01|2018|02|01|format=ordinal_us}} → one hundred twentieth
  • {{age|1980|1990|range=yes|format=Cardinal}} → Nine或ten
  • {{age in years, months and days|April 1980|1995|format=Cardinal|range=yes}} → Fourteen或fifteen年

追踪分类

参见

  • {{time interval}} • This template supports all age/duration calculations and provides more options such as abbreviating or omitting units.