2017-11-06 2 views
1

Ich versuche, alle Eingabewerte einer URL zu finden, aber ich muss ein Paar ausschließen. Wie schließen Sie zwei oder mehr IDs in der Liste aus? Ähnlich wie folgt aus:Ausschließen von zwei IDs in jsoup selector?

 Elements e = doc.select("input[id != fm-login-id]"); 

aber ich möchte zwei IDs ausschließen, so ich suche etwas wie folgt aus:

 Elements e = doc.select("input[id != fm-login-id && id fm-login-password]"); 

Kennt jemand die richtige Art und Weise, dies zu tun?

Dank

Antwort

1

Ich weiß nicht, ob jsoup tatsächlich unterstützt [attr!=value] Selektoren (sie sind part of jQuery, und ich weiß nicht, wie viel jsoup von ihm leiht abgesehen von :has()), aber in Standard-Selektor Syntax Sie tun dies mit :not() und entweder ID-Selektoren oder Attributselektoren je nach Vorliebe:

Elements e = doc.select("input:not(#fm-login-id):not(#fm-login-password)"); 
Elements e = doc.select("input:not([id=fm-login-id]):not([id=fm-login-password])"); 
+0

Hallo, danke für die Hilfe! Wissen Sie, ob es eine Möglichkeit gibt, alle "Wert" -Attribute aus dieser Elementliste zu analysieren? Mit 'System.out.print (e.attr (" value "));' gibt nur einen Wert vom ersten Element. Bedeutet das, dass ich ein Array erstellen muss? –

+0

@sandra burgle: Sie müssen e (das wiederum ein Array ist) mit 'for (Element element: e)' durchlaufen. – BoltClock

+0

Vielen Dank für Ihre Hilfe! [this] (https://stackoverflow.com/questions/6128984/how-do-i-make-an-array-from-jsoup-elements-java) (und [das] (https://stackoverflow.com/ Fragen/409784/Was ist der einfachste Weg zum Drucken-ein-Java-Array)) ist, was ich gefunden habe, nachdem ich Ihren Kommentar gelesen habe. Funktioniert gut, für jeden, der das gleiche Problem hat. –