pubDate
mark
- xsl
0 Olaf Schneider0 mark0 Olaf Schneider0 mark0 Olaf Schneider0 mark0 Olaf Schneider0 mark0 Olaf Schneider0 mark
hallo zusammen,
ich habe eine frage zum pubDate.
mein xsl-code sieht folgendermassen aus:
irgendwas muss mit dem datum falsch sein denn in der Ausgabe sieht es so aus:
Mon, Se| 25| 200
mir fehlt die "6" von 2006... kann mir jemand sagen woran das liegt?
danke und gruss,
mark
Hallo Mark,
es würde helfen, wenn Du das Format von pubDate mit angeben würdest.
Du weisst, dass das erste Zeichen im String im Gegensatz zu anderen Sprachen nicht den Index 0, sondern 1 hat?
Gruß
Olaf Schneider
es würde helfen, wenn Du das Format von pubDate mit angeben würdest.
uff, du hast mich erwischt... kann man das Format nicht dem Quellcode entnehmen...?
substring(pubDate, 1, 5)
sorry, bin ratlos.
es würde helfen, wenn Du das Format von pubDate mit angeben würdest.
uff, du hast mich erwischt... kann man das Format nicht dem Quellcode entnehmen...?
nein! Es gibt tausende Formatierungsmöglichketen für Datumsangaben. Welche benutzt Du? Bitte gib doch einfach ein Beispiel an.
Beispiele: 2006-09-26 | 20060926 | Sept 26 2006 | Dienstag, der 26. September | 1159285351 …
Gruß
Olaf
Ah, Ok, ich benutze
September 25, 2006, amerikanisches Format.
September 25, 2006, amerikanisches Format.
Jetzt kommen wir der Sache schon näher. Die Längen der Monatsnamen sind natürlich verschieden. Da jedoch nach dem Monatsnamen ein Leerzeichen folgt, bieten sich die Funktionen substring-before und substring-after an. Mit festen Positionswerten hat man bei diesem Format keine Chance.
Gruß
Olaf
ich koennte auch das hier verwenden
Fri, Se| 15| 2006
das ist immer gleich lang...
momentan sieht die ausgabe so aus:
Fri, Se| 15| 200 die "6" fehlt...
wenn ich die "6" bekommen koennte waere ich gluecklich!
Hallo mark,
ich koennte auch das hier verwenden
Fri, Se| 15| 2006
das ist immer gleich lang...
Dein xsl kann bei keinem Deiner vorgeschlagenen Formate diese Ausgabe produzieren, da Du mit Substring Zeichenketten vertauscht ausgibst. Daher ist mindestens eine Deiner hier im Forum gemachten Angaben falsch. Ohne ein aktuelles xsl, ein aktuelles xml (oder einen Ausschnitt) und die relevante Ausgabe kann ich Dir leider nicht helfen.
Gruß
Olaf
wie gesagt, die momentane ausgabe ist
Mon, Se| 25| 200
ohne die "6"
meine xsl mit der das ganze laeuft ist folgende:
und das feed das ich einbinden will ist
http://www.porsche.com/usa/rss/
wie gesagt, ich kann nur diese "6" nicht anzeigen lassen...
vielen dank fuer die hilfe!
Hallo Mark,
jetzt haben wir langsam die Informationen zusammen. Das Format von pubdate ist (beispielsweise)
Fri, 22 Sep 2006 00:00:00 GMT
Du hattest
September 25, 2006, amerikanisches Format.
geschrieben und damit wohl Deine Ausgabe gemacht.
Zählen wir doch einmal die Positionen:
Fri, 22 Sep 2006 00:00:00 GMT
00000000011111111112222222222
12345678901234567890123456789
dann siehst Du genau, an welcher Position das Jahr beginnt und kannst Dein xsl korrigieren.
Gruß
Olaf
P.S.: Versuche das nächste Mal von Anfang an alle relevanten Informationen zur Verfügung zu stellen; dann kann man sich so ein hin und her sparen.
Zählen wir doch einmal die Positionen:
Fri, 22 Sep 2006 00:00:00 GMT
00000000011111111112222222222
12345678901234567890123456789
nochmal DANKE fuer deine hilfe, jetzt hab ich meine "6".
die loesung ist
<xsl:value-of select="substring(pubDate, 12, 5)"/>
die 5 hab ich durch ausprobieren rausgefunden...
danke nochmal!
Fri, 22 Sep 2006 00:00:00 GMT
00000000011111111112222222222
12345678901234567890123456789<xsl:value-of select="substring(pubDate, 12, 5)"/>
substring(pubDate, 13, 4) würde es auch tun, dann hat's allerdings ein Leerzeichen weniger.
Gruß
Olaf