Grundsätzlich muss ich etwas Text schaben, der geschachtelte Tags hat.
In etwa so:
%Vor%Und ich möchte einen Ausdruck, der das hervorbringt:
%Vor%Ich habe damit für eine Stunde oder mehr gekämpft, ohne Ergebnis.
Jede Hilfe ist willkommen
Der Zeichenfolgenwert eines Elementknotens ist die Verkettung der Zeichenfolgenwerte von all Textknoten-Nachkommen des Elementknotens in der Reihenfolge des Dokuments.
Sie möchten die Funktion XPath %code% für das Element div aufrufen.
%Vor%Sie können auch die Funktion normalize-space verwenden, um unerwünschte Leerzeichen zu reduzieren aufgrund von Zeilenumbrüchen und Einrückungen im Quelldokument. Dadurch werden führende und nachfolgende Leerzeichen entfernt und Sequenzen von Leerzeichen durch ein einzelnes Leerzeichen ersetzt. Wenn Sie einen Knoten an normalize-space () übergeben, wird der Knotensatz zuerst in den Zeichenfolgenwert konvertiert. Wenn keine Argumente an normalize-space übergeben werden, wird der Kontextknoten verwendet.
%Vor%Vielleicht möchten Sie den Kontextknoten effizienter auswählen als den Beispiel-XPath, den ich verwendet habe. ZB kann das folgende Javascript-Beispiel in einigen Browsern gegen diese Seite ausgeführt werden.
%Vor%Der Leerzeichen-Nur-Text-Knoten zwischen den Elementen %code% und %code% könnte ein Problem sein.
Verwenden Sie :
%Vor%Wenn dieser Ausdruck ausgewertet wird, ist das Ergebnis der Zeichenfolgenwert des ersten (und hoffentlich einzigen) Elements %code% im Dokument.
Da der Zeichenfolgenwert eines Elements in der XPath-Spezifikation definiert ist als Verkettung in der Reihenfolge der Dokumente aller Textknoten-Nachkommen, dies ist genau die gewünschte Zeichenfolge.
Da dies eine Anzahl von Textknoten mit vollständigem Leerraum enthalten kann, möchten Sie möglicherweise den angrenzenden weißen und den nachfolgenden Leerraum entfernen und einen solchen Zwischen-Leerraum durch ein einzelnes Leerzeichen ersetzen:
Verwenden Sie :
%Vor%XSLT-basierte Verifizierung:
%Vor%, wenn diese Umwandlung auf das bereitgestellte XML-Dokument angewendet wird:
%Vor%Die beiden XPath-Ausdrücke werden ausgewertet und die Ergebnisse dieser Auswertungen werden in die Ausgabe kopiert:
%Vor%Wie wäre es damit:
/ div / text () [1] | / div / span / Text () | / div / b / Text () | / div / text () [2]
Hmmss Ich bin mir nicht sicher über den letzten Teil. Du musst vielleicht damit spielen.
Grundsätzlich muss ich etwas Text schaben, der geschachtelte Tags hat.
In etwa so:
%Vor%Und ich möchte einen Ausdruck, der das hervorbringt:
%Vor%Ich habe damit für eine Stunde oder mehr gekämpft, ohne Ergebnis.
Jede Hilfe ist willkommen
Der Zeichenfolgenwert eines Elementknotens ist die Verkettung der Zeichenfolgenwerte von all Textknoten-Nachkommen des Elementknotens in der Reihenfolge des Dokuments.
Sie möchten die Funktion XPath string()
für das Element div aufrufen.
Sie können auch die Funktion normalize-space verwenden, um unerwünschte Leerzeichen zu reduzieren aufgrund von Zeilenumbrüchen und Einrückungen im Quelldokument. Dadurch werden führende und nachfolgende Leerzeichen entfernt und Sequenzen von Leerzeichen durch ein einzelnes Leerzeichen ersetzt. Wenn Sie einen Knoten an normalize-space () übergeben, wird der Knotensatz zuerst in den Zeichenfolgenwert konvertiert. Wenn keine Argumente an normalize-space übergeben werden, wird der Kontextknoten verwendet.
%Vor%Vielleicht möchten Sie den Kontextknoten effizienter auswählen als den Beispiel-XPath, den ich verwendet habe. ZB kann das folgende Javascript-Beispiel in einigen Browsern gegen diese Seite ausgeführt werden.
%Vor% Der Leerzeichen-Nur-Text-Knoten zwischen den Elementen span
und b
könnte ein Problem sein.
Verwenden Sie :
%Vor% Wenn dieser Ausdruck ausgewertet wird, ist das Ergebnis der Zeichenfolgenwert des ersten (und hoffentlich einzigen) Elements div
im Dokument.
Da der Zeichenfolgenwert eines Elements in der XPath-Spezifikation definiert ist als Verkettung in der Reihenfolge der Dokumente aller Textknoten-Nachkommen, dies ist genau die gewünschte Zeichenfolge.
Da dies eine Anzahl von Textknoten mit vollständigem Leerraum enthalten kann, möchten Sie möglicherweise den angrenzenden weißen und den nachfolgenden Leerraum entfernen und einen solchen Zwischen-Leerraum durch ein einzelnes Leerzeichen ersetzen:
Verwenden Sie :
%Vor%XSLT-basierte Verifizierung:
%Vor%, wenn diese Umwandlung auf das bereitgestellte XML-Dokument angewendet wird:
%Vor%Die beiden XPath-Ausdrücke werden ausgewertet und die Ergebnisse dieser Auswertungen werden in die Ausgabe kopiert:
%Vor%Tags und Links xpath