Rückwärts Suchen in einer Zeichenfolge

8

Ich muss in der Lage sein, das letzte Vorkommen eines Zeichens in einem Element zu finden.

Zum Beispiel:

%Vor%

Wenn ich versuche, es mithilfe von substring-before(mediaurl, '.') und substring-after(mediaurl, '.') zu finden, wird es natürlich auf den ersten Punkt passen.

Wie bekomme ich die Dateierweiterung? Im Wesentlichen muss ich den Dateinamen und die Erweiterung von einem Pfad wie diesem abrufen, aber ich bin ziemlich ratlos, wie man es mit XSLT macht.

    
Xetius 18.08.2008, 12:35
quelle

4 Antworten

14

Das folgende Beispiel zeigt eine Vorlage, die die erforderliche Ausgabe in XSLT 1.0 erzeugt:

%Vor%     
samjudson 19.08.2008, 15:34
quelle
4

Wenn Sie XSLT 2.0 verwenden, ist es einfach:

%Vor%

Wenn nicht, ist es ein bisschen schwieriger. Es gibt ein gutes Beispiel aus dem O'Reilly XSLT Cookbook . Suche nach "Tokening einer Zeichenfolge".

Ich glaube, es gibt auch eine EXSLT-Funktion, wenn Sie diese verfügbar haben.

    
James Sulak 18.08.2008 14:27
quelle
0

Wie wäre es, mit "/" zu token und das letzte Element aus dem Array zu nehmen?

%Vor%

War ein XSLT-Fiddler irgendwann zurück ... hat jetzt den Kontakt verloren. Aber HTH

    
Gishu 18.08.2008 12:55
quelle
0

Als Referenz wird dieses Problem normalerweise in XSLT als "substring-after-last" bezeichnet.

    
jelovirt 26.08.2008 13:21
quelle

Tags und Links