2012-03-24 9 views
1

Ich habe diese XPath:XPath vergleicht Anweisung mit mehreren Anweisungen

//a[ substring-after(substring-before(@href , '.deviantart.com') , 'http://') != 'about' and substring-after(substring-before(@href , '.deviantart.com') , 'http://') != 'browse' and substring-after(substring-before(@href , '.deviantart.com') , 'http://') != 'chat' ] 

und ich möchte in der Lage sein, so etwas zu tun:

//a[ substring-after(substring-before(@href , '.deviantart.com') , 'http://') != [ 'about' , 'browse' , 'chat' ] ] 

Gibt es eine Möglichkeit, dies zu tun?

Antwort

0

In xpath2 können Sie

//a[not(substring-after(substring-before(@href , '.deviantart.com') , 'http://') 
    = ('about' , 'browse' , 'chat')) ] 

in reiner xpath1 gehen Sie eher begrenzt sind, obwohl, wenn Sie Xslt oder einen anderen Kontext verwenden, wo Sie XPath-Variablen definieren können Sie es wahrscheinlich ein bisschen sauberer machen könnten.

+0

ich benutze es in document.evaluate Funktion in Javascript und es funktioniert nicht –