Vorlage:Entfernungsformat
Aus JodWiki
(Unterschied zwischen Versionen)
(25 dazwischenliegende Versionen von einem Benutzer werden nicht angezeigt) | |||
Zeile 16: | Zeile 16: | ||
6. km wieder anfügen | 6. km wieder anfügen | ||
− | Input: {{#vardefine:x1| | + | Input: {{#vardefine:x1|114,11 km}}{{#var:x1}} |
1. km entfernen (ez) und 2. Stringlänge bestimmen (sl von ez) | 1. km entfernen (ez) und 2. Stringlänge bestimmen (sl von ez) | ||
Postion " km": {{#vardefine:sl|{{#pos:{{#var:x1}}| |0}}}}{{#var:sl}} ist auch Stringlänge (sl von ez) | Postion " km": {{#vardefine:sl|{{#pos:{{#var:x1}}| |0}}}}{{#var:sl}} ist auch Stringlänge (sl von ez) | ||
Zeile 25: | Zeile 25: | ||
4. nullen anhängen | 4. nullen anhängen | ||
{{#switch: {{#var:slpo}} | {{#switch: {{#var:slpo}} | ||
− | | 1 = {{#vardefine:ez1|{{#var:ez}},00}} | + | | 1 = {{#vardefine:ez1|{{#var:ez}},00}}{{#vardefine:po|{{#var:sl}}}} |
| 2 = {{#vardefine:ez1|{{#var:ez}}0}} | | 2 = {{#vardefine:ez1|{{#var:ez}}0}} | ||
| 3 = {{#vardefine:ez1|{{#var:ez}}}} | | 3 = {{#vardefine:ez1|{{#var:ez}}}} | ||
| {{#vardefine:ez1|{{#var:ez}}}} | | {{#vardefine:ez1|{{#var:ez}}}} | ||
− | }}{{#var:ez1}} | + | }}ez1: {{#var:ez1}} po: {{#var:po}} |
+ | 5. Blanks vorsetzten | ||
+ | {{#switch: {{#var:po}} | ||
+ | | 1 = {{#vardefine:ez2| {{#var:ez1}}}} | ||
+ | | 2 = {{#vardefine:ez2| {{#var:ez1}}}} | ||
+ | | 3 = {{#vardefine:ez2|{{#var:ez1}}}} | ||
+ | | {{#vardefine:ez2|{{#var:ez1}}}} | ||
+ | }}{{#vardefine:ez2|{{#var:ez2}} km}}ez2: --{{#var:ez2}}-- | ||
− | </noinclude><includeonly>{{#vardefine:sl|{{# | + | </noinclude><includeonly>{{#vardefine:x1|{{{1}}}}}{{#vardefine:sl|{{#pos:{{#var:x1}}| |0}}}}{{#vardefine:ez|{{#sub:{{#var:x1}}|0|{{#var:sl}}}}}}{{#vardefine:po|{{#pos:{{#var:ez}}|,|0}}}}{{#if: {{#var:po}}| {{#vardefine:slpo|{{#expr:{{#var:sl}}-{{#var:po}}}}}} | {{#vardefine:slpo|1}} }}{{#switch: {{#var:slpo}} |
− | + | | 1 = {{#vardefine:ez1|{{#var:ez}},00}}{{#vardefine:po|{{#var:sl}}}} | |
− | </includeonly> | + | | 2 = {{#vardefine:ez1|{{#var:ez}}0}} |
+ | | 3 = {{#vardefine:ez1|{{#var:ez}}}} | ||
+ | | {{#vardefine:ez1|{{#var:ez}}}} | ||
+ | }}{{#switch: {{#var:po}} | ||
+ | | 1 = {{#vardefine:ez2| {{#var:ez1}}}} | ||
+ | | 2 = {{#vardefine:ez2| {{#var:ez1}}}} | ||
+ | | 3 = {{#vardefine:ez2|{{#var:ez1}}}} | ||
+ | | {{#vardefine:ez2|{{#var:ez1}}}} | ||
+ | }}{{#vardefine:ez2|{{#var:ez2}} km}}{{#replace:{{#var:ez2}}|,|.}}</includeonly> |
Aktuelle Version vom 14. Juli 2017, 16:06 Uhr
Input: Entferung aus geodistance ( x.Y, xx.Y, xxx.Y , .Y = .xx,.x, null gefolgt von km) {{{1}}} Output: aaa.bb mit führenden Blank(s) und abschließenden Nullen)
1. km entfernen (ez) 2. Stringlänge bestimmen (sl) 3. Postition "," bestimmen (po)(kein Komma: pos = Leer -> slpo=1) 4. wenn sl-po = 1: ,00 anfügen und po neu bestimmen 2: 0 anfügen 3: nichts anfügen 5. wenn po = 1: 2 Blanks vorstellen 2: 1 Blank vorstellen 3: nichts vorstellen 6. km wieder anfügen
Input: 114,11 km 1. km entfernen (ez) und 2. Stringlänge bestimmen (sl von ez) Postion " km": 6 ist auch Stringlänge (sl von ez) ez: --114,11-- 3. Postition "," von ez bestimmen (kein Komma: pos = 0) (po) Komma-Position (po): 3 sl-po: 3 4. nullen anhängen ez1: 114,11 po: 3 5. Blanks vorsetzten ez2: --114,11 km--