PlusPedia wird derzeit technisch modernisiert. Aktuell laufen Wartungsarbeiten. Für etwaige Unannehmlichkeiten bitten wir um Entschuldigung; es sind aber alle Artikel zugänglich und Sie können PlusPedia genauso nutzen wie immer.

Neue User bitte dringend diese Hinweise lesen:

Anmeldung - E-Mail-Adresse Neue Benutzer benötigen ab sofort eine gültige Email-Adresse. Wenn keine Email ankommt, meldet Euch bitte unter NewU25@PlusPedia.de.

Hinweis zur Passwortsicherheit:
Bitte nutzen Sie Ihr PlusPedia-Passwort nur bei PlusPedia.
Wenn Sie Ihr PlusPedia-Passwort andernorts nutzen, ändern Sie es bitte DORT bis unsere Modernisierung abgeschlossen ist.
Überall wo es sensibel, sollte man generell immer unterschiedliche Passworte verwenden! Das gilt hier und im gesamten Internet.
Aus Gründen der Sicherheit (PlusPedia hatte bis 24.07.2025 kein SSL | https://)

Bei PlusPedia sind Sie sicher: – Wir verarbeiten keine personenbezogenen Daten, erlauben umfassend anonyme Mitarbeit und erfüllen die Datenschutz-Grundverordnung (DSGVO) vollumfänglich. Es haftet der Vorsitzende des Trägervereins.

PlusPedia blüht wieder auf als freundliches deutsches Lexikon.
Wir haben auf die neue Version 1.43.3 aktualisiert.
Wir haben SSL aktiviert.
Hier geht es zu den aktuellen Aktuelle Ereignissen

Vorlage:FormatDate: Unterschied zwischen den Versionen

Aus PlusPedia
Zur Navigation springen Zur Suche springen
Am m Gst (Diskussion | Beiträge)
K 7 Versionen: Löschbedroht
 
Fmrauch (Diskussion | Beiträge)
Keine Bearbeitungszusammenfassung
 
(Eine dazwischenliegende Version von einem anderen Benutzer wird nicht angezeigt)
Zeile 1: Zeile 1:
<onlyinclude><includeonly>{{#invoke:Vorlage:FormatDate|Execute}}<!--
<onlyinclude><includeonly><!--
-->{{#iferror:{{#invoke:Vorlage:FormatDate|Execute}}|<span style="display:none;">[[Vorlage:FormatDate/Wartung/Error]]</span>|}}<!--
Die Ermittlung der Parameter erfolgt mit Hilfe der Tatsache, dass sich der in Variable 1 übergebene ISO-String als Subtraktion interpretieren lässt.
-->{{#ifeq:{{Str_left|{{{1|}}}x|1}}|0|{{#ifeq:{{Str_left|{{{1|}}}xx|2}}|0-|<!-- nix -->|<span style="display:none;">[[Vorlage:FormatDate/Wartung/0]]</span>}}}}<!--
Daher ist der in arithmetischen Ausdrücken auftretende Parameter {{{1}}} nicht als einfache Variable interpretierbar sondern als eine Zeichenkette.
--></includeonly></onlyinclude>
Beispiel:
  {{{1}}} sei "2008-07-5"
  dann ist "0 * {{{1}}}" nicht "0" sondern
  "0 * 2008-07-5" = -7-5 = -12
 
Es gilt daher:
d =  (y-m-d) - (y-m-d*2)
m = -(y-m-d*0 - y-m-d*0)/2
y =  y-m-d  - (y-m-d - y-m-d)/2
-->{{ #ifexpr: {{{1}}}*0-{{{1}}}*0 <!-- if (monat != 0): -->
        | {{ #ifexpr: (  {{#ifeq: {{lc:{{{2}}}}} | link | 1 | 0}}
                      + {{#ifeq: {{lc:{{{3}}}}} | link | 1 | 0}}
                      + {{#ifeq: {{lc:{{{4}}}}} | link | 1 | 0}} ) <!-- if Verlinkung -->
                    * ( ({{{1}}})-({{{1}}}*2) ) <!-- and (tag != 0): -->
              |<!--
                  -->[[<!-- "[["
                  -->{{ #expr: ({{{1}}})-({{{1}}}*2) }}.&#32;<!-- "tag. "
                  -->{{ Monat Name-Nummer | {{ #expr: -({{{1}}}*0-{{{1}}}*0)/2 }} | F | {{#ifeq: {{{AT}}} | ja | AT }} }}{{!}}<!-- "monat|"
                  -->{{ #expr: ({{{1}}})-({{{1}}}*2) }}.&nbsp;<!-- "tag.&nbsp;"
                  -->{{ #ifexpr: {{#ifeq:{{{2}}}|M|1|0}} + {{#ifeq:{{{2}}}|S|1|0}} + {{#ifeq:{{{2}}}|F|1|0}}
                        | {{ Monat Name-Nummer | {{ #expr: -({{{1}}}*0-{{{1}}}*0)/2 }} | {{{2}}} | {{#ifeq: {{{AT}}} | ja | AT}} }}
                        | {{ Monat Name-Nummer | {{ #expr: -({{{1}}}*0-{{{1}}}*0)/2 }} |    F    | {{#ifeq: {{{AT}}} | ja | AT}} }}
                    }}<!-- "mon."/"monat"
                  -->]]<!-- "]]" -->
              |<!--
                  -->{{ #ifexpr: ({{{1}}})-({{{1}}}*2) <!-- if (tag != 0): -->
                        | {{ #expr: ({{{1}}})-({{{1}}}*2) }}.&nbsp; <!-- "tag.&nbsp;" -->
                    }}<!--
                  -->{{ #ifexpr: {{#ifeq:{{{2}}}|M|1|0}} + {{#ifeq:{{{2}}}|S|1|0}} + {{#ifeq:{{{2}}}|F|1|0}}
                        | {{ Monat Name-Nummer | {{ #expr: -({{{1}}}*0-{{{1}}}*0)/2 }} | {{{2}}} | {{#ifeq: {{{AT}}} | ja | AT}} }}
                        | {{ Monat Name-Nummer | {{ #expr: -({{{1}}}*0-{{{1}}}*0)/2 }} |   F    | {{#ifeq: {{{AT}}} | ja | AT}} }}
                    }}<!-- "mon."/"monat"
      -->}}<!--
      -->{{ #ifexpr:  {{#ifeq: {{lc:{{{2}}}}} | nbsp | 1 | 0}}
                    + {{#ifeq: {{lc:{{{3}}}}} | nbsp | 1 | 0}}
                    + {{#ifeq: {{lc:{{{4}}}}} | nbsp | 1 | 0}}
              | &nbsp; <!-- "&nbsp;" -->
              | &#32;  <!-- " " -->
          }}
    }}<!--
-->{{ #switch: {{ #expr: {{#ifeq: {{lc:{{{2}}}}} | link | 1 | 0}}
                        + {{#ifeq: {{lc:{{{3}}}}} | link | 1 | 0}}
                        + {{#ifeq: {{lc:{{{4}}}}} | link | 1 | 0}} > 0 }}<!-- Verlinkung ?
            -->{{ #expr:  {{{1}}}-({{{1}}}-{{{1}}})/2 <= 0 }} <!--  -->
        | 00 =  {{ #expr: {{{1}}}-({{{1}}}-{{{1}}})/2 }}
        | 10 = [[{{ #expr: {{{1}}}-({{{1}}}-{{{1}}})/2 }}]]
        | 01 =  {{ #expr:-({{{1}}}-({{{1}}}-{{{1}}})/2) + 1 }}&nbsp;v.&nbsp;Chr.
        | 11 = [[{{ #expr:-({{{1}}}-({{{1}}}-{{{1}}})/2) + 1 }}&#32;v. Chr.{{!}}<!--
              -->{{ #expr:-({{{1}}}-({{{1}}}-{{{1}}})/2) + 1 }}&nbsp;v.&nbsp;Chr.]]
    }}<!--
--></includeonly></onlyinclude>


{{Dokumentation}}
{{Dokumentation}}
[[Kategorie:Vorlage:Zahlenformatierung]]

Aktuelle Version vom 7. Oktober 2024, 22:51 Uhr



Fehler beim Erstellen des Vorschaubildes: Datei fehlt
Dokumentation[Bearbeiten]
Fehler beim Erstellen des Vorschaubildes: Datei fehlt Diese Vorlage ist vielfach eingebunden. Wenn du die Auswirkungen genau kennst, kannst du sie bearbeiten. Meist ist es jedoch sinnvoll, Änderungswünsche erst mit den jeweiligen Bearbeitern dieser Vorlage abzustimmen.

Die Vorlage FormatDate formatiert ein in Anlehnung an ISO 8601 angegebenes Datum wie 2000-06-29 (29. Juni 2000), etwa zur Verwendung in Listen oder Infoboxen. Dabei wird der volle oder ein abgekürzter deutscher Monatsname erzeugt, der volle Name ist Standard. Im Gegensatz zur Parser-Funktion #time kann diese Vorlage alle Daten verarbeiten, auch Daten vor dem Jahr 1. Durch Angabe einer 0 für Monat bzw. Tag kann eine Ausgabe ohne Monats-/Tagesangabe erzielt werden. Zusätzliche Parameter bewirken Verlinkung oder durchgängige Verwendung von geschützten Leerzeichen (&nbsp;).

Zur Verwendung in sortierbaren Tabellen gibt es die fast gleichwertige Vorlage:SortDate, die neben der Formatierung auch noch für die richtige Sortierung sorgt.

Aufruf (Normalfall)

  • {{FormatDate|Datum}}
  • {{FormatDate|Datum|Formatcode}}

Dabei muss „Datum“ in der Form „jjjj-mm-tt“ oder „jjjj-m-t“ angegeben werden, also z. B. „1881-11-03“ für den 3. November 1881. Die Angabe in der Form „jjjj-mm-0“ oder „jjjj-mm-00“ unterdrückt die Angabe des Tages für Datumsangaben, die nur monatsgenau sind. Die Angabe in der Form „jjjj-0-0“ oder „jjjj-00-00“ gibt nur das Jahr aus. Angaben mit führendem (Bindestrich‑)Minus wie „-33-07-11“ bezeichnen Daten vor dem Jahr 1 v. Chr., hier den 11. Juli 34 v. Chr. (nicht den 11. Juli 33 v. Chr.!). (Als Trennzeichen ist ausschließlich das Zeichen „-“, das Bindestrich‑Minus, zu verwenden, keine andere Variante eines Striches wie Gedankenstrich, „typografisch korrektes“ Minuszeichen, usw. Das gleiche gilt, abweichend von ISO 8601, für die eventuell einleitende Minus-Angabe.).

Als zweiter Parameter kann ein Formatcode angegeben werden: „F“ (= ‚full‘) oder „M“ (= ‚month‘, dreibuchstabig) wie bei #time, zusätzlich „S“ (= ‚short‘, vierbuchstabig/drei mit «.»). „F“ ist Standard, kann also weggelassen werden:

Format-
code
Form der Monatsangabe Beispiel Resultat
ohne Januar Februar ... {{FormatDate|2000-02-29}}
{{FormatDate|2000-03-01}}
29. Februar 2000
1. März 2000
F Januar Februar ... {{FormatDate|2000-02-29|F}}
{{FormatDate|2000-03-01|F}}
29. Februar 2000
1. März 2000
M Jan. Feb. Mär. Apr. Mai Jun. Jul. Aug. ... {{FormatDate|2000-02-29|M}}
{{FormatDate|2000-03-01|M}}
29. Feb. 2000
1. Mär. 2000
S Jan. Feb. März Apr. Mai Juni Juli Aug. ... {{FormatDate|2000-02-29|S}}
{{FormatDate|2000-03-01|S}}
29. Feb. 2000
1. März 2000

Aufruf mit Zusatzparametern

Hinter dem Datum und evtl. dem Formatcode sind zwei weitere Parameter möglich:

Parameter Wirkung Anmerkung
nbsp zwischen Monat und Jahr wird ein geschütztes Leerzeichen (&nbsp;) gesetzt Standard ist an dieser Stelle ein normales Leerzeichen, überall sonst wird immer ein geschütztes Leerzeichen erzeugt.
sp zwischen Monat und Jahr wird ein normales Leerzeichen gesetzt
link das Datum wird verlinkt
AT=ja Jänner anstatt Januar

Beispiele

Aufruf Ergebnis Parserfunktion zum Vergleich Ergebnis
{{FormatDate|1-1-1}} 1. Januar 1 nicht möglich
{{FormatDate|1234-2-28}} 28. Februar 1234 {{#time:j.&#160;F Y|1234-2-28}} 28. Februar 1234
{{FormatDate|1881-3-1}} 1. März 1881 {{#time:j.&#160;F Y|1881-3-1}} 1. März 1881
{{FormatDate|1881-04-01}} 1. April 1881 {{#time:j.&#160;F Y|1881-04-01}} 1. April 1881
{{FormatDate|2000-05-30}} 30. Mai 2000 {{#time:j.&#160;F Y|2000-05-30}} 30. Mai 2000
{{FormatDate|2000-06-29|M}} 29. Jun. 2000 {{#time:j.&#160;M Y|2000-06-29}} 29. Jun. 2000
{{FormatDate|2000-07-28|S}} 28. Juli 2000 nicht möglich
{{FormatDate|2000-08-27|F}} 27. August 2000 {{#time:j.&#160;F Y|2000-08-27}} 27. August 2000
{{FormatDate|2000-9-0}} September 2000 {{#time:F Y|2000-9}} September 2000
{{FormatDate|2000-10-0}} Oktober 2000 {{#time:F Y|2000-10}} Oktober 2000
{{FormatDate|2000-11-00}} November 2000 {{#time:F Y|2000-11}} November 2000
{{FormatDate|2000-12-00}} Dezember 2000 {{#time:F Y|2000-12}} Dezember 2000
{{FormatDate|2000-0-0}} 2000 {{#time:Y|2000}} 2000
{{FormatDate|2000-9-9|link}} 9. September 2000 {{#time:[[j.&#160;F]] [[Y]]|2000-9-9}} 9. September 2000
{{FormatDate|2000-9-0|link}} September 2000 {{#time:F [[Y]]|2000-9}} September 2000
{{FormatDate|2000-0-0|link}} 2000 [[{{#time:Y|2000}}]] 2000
{{FormatDate|1881-3-1|nbsp}} 1. März 1881 {{#time:j.&#160;F&#160;Y|1881-3-1}} 1. März 1881
{{FormatDate|1881-3-1|sp}} 1. März 1881 {{#time:j.&#160;F Y|1881-3-1}} 1. März 1881
{{FormatDate|1881-3-1|nbsp|link}} 1. März 1881 {{#time:[[j.&#160;F]]&#160;[[Y]]|1881-3-1}} 1. März 1881
{{FormatDate|1881-3-1|sp|link}} 1. März 1881 {{#time:[[j.&#160;F]] [[Y]]|1881-3-1}} 1. März 1881
{{FormatDate|-200-12-1}} 1. Dezember 201 v. Chr. nicht möglich
{{FormatDate|0-12-25}} 25. Dezember 1 v. Chr. nicht möglich
{{FormatDate|2000}} 2000 {{#time:Y|2000}} 2000
{{FormatDate|1881-01-11|AT=ja}} 11. Jänner 1881 nicht möglich

Verhalten bei fehlerhafter Verwendung

Aufruf Ergebnis Parserfunktion zum Vergleich Ergebnis
{{FormatDate|2000-02-30}} 30. Februar 2000 {{#time:j.&#160;F Y|2000-02-30}} 1. März 2000
{{FormatDate|31.12.2000}} 31.12 {{#time:j.&#160;F Y|31.12.2000}} 31. Dezember 2000
{{FormatDate|2000.12.31}} 2000.12 {{#time:j.&#160;F Y|2000.12.31}} Fehler: Ungültige Zeitangabe
{{FormatDate|xxx}} Fehler im Ausdruck: Unerkanntes Wort „xxx“ {{#time:j.&#160;F Y|xxx}} Fehler: Ungültige Zeitangabe

Siehe auch


Bei Fragen zu dieser Vorlage kannst du dich an die Vorlagenwerkstatt wenden oder in der Quelle nachschauen (bisher ist das meist die Vorlage in der Wikipedia).