Teil einer URL auslesen

Jasmin589

Mitglied
Hallo zusammen, ich habe eine Frage zu folgendem Problem.

Ich erhalte eine URL und möchte aus dieser einen teil auslesen.

z.B. www.DasIstEinTest.de

Davon möchte ich jetzt z.B. nur EinTest auslesen und abspeichern. Kann mir da jemand erklären wie ich das mache?

Danke schonmal für eure hilfe ! 🙂
 
Achso! Ich habe mich verlesen. Meintest du wirklich EinTest oder meinst du eher DasIstEinTest?

Also in Java gibt es noch contains(CharSequence s), startsWith(String prefix) und endsWith(String suffix).
 
Also das war jetzt nur eine Beispiel URL die ich angegeben habe. Die wirkliche sieht natürlich anders aus und da hab ich in der URL ein token drin, was ich gerne auslesen würde ohne das ständig per Hand machen zu müssen.
 
Der Token ist vermutlich ein Parameter?

Möglich wäre zB, den Index das Parameters zu bestimmen und den entsprechenden Teil auszuschneiden.
 
Ja also die ganze URL ist ein String. Nur ist das doch eine ziemlich doofe Idee die Indexe zu suchen, wenn z.B. der Token in der URL mal kürzer und mal länger ausfällt.
 
Ja also die ganze URL ist ein String. Nur ist das doch eine ziemlich doofe Idee die Indexe zu suchen, wenn z.B. der Token in der URL mal kürzer und mal länger ausfällt.
Eben weil er unterschiedliche lang ist, müsstest du die Indizes bestimmen, wie willst du sonst die Länge rausbekommen?

Eine andere Möglichkeit wären reguläre ausdrücke - aber das kommt drauf an, wie der String aufgebaut ist.
 
@Jasmin589 Die Angabe im letzten Post ist doch eine komplett andere Anforderung als im ersten Post!
Das sind einfach GET-Parameter. Dafür verwendest du am besten split(), wie bereits oben genannt.
 
https://www.yyz/token=123456789&blablabla.de
Ist das eine richtige URL?
Müsste das nicht eher so aussehen: https://www.yyz.de?token=123456789&blablabla

Wenn der zweite Fall eintritt, dann ist der Token nämlich bloß ein mit Namen bestimmbarer URL Query Parameter.
Die unterliegen einer festgelegten Syntax und sind somit leicht auszulesen.

https://github.com/RalleYTN/Utils/blob/master/src/de/ralleytn/utils/NetUtils.java
Der Link führt dich zu einer Klasse, die eine Methode zum auslesen der Query Paremeter besitzt.

So würde man die Methode anwenden.
Java:
try {
    String token = (String)NetUtils.getQueryParams(myURL).get("token");
} catch(UnsupportedEncodingException exception) {
    exception.printStackTrace();
}

Hier ist auch noch einmal der Wikipediaartikel zu Query Strings, wenn du dich schlau lesen möchtest: https://de.wikipedia.org/wiki/Query_String
 
Wenn du es doch "manuell" machen willst und du auch immer nur den ersten get parameter willst (also das hinter dem ersten = zeichen), dann ging das in etwa so:

Code:
String tx = url.substring(url.indexOf("=")+1, url.indexOf("&"));

Eventuell solltest du auch die Fälle abdecken dass kein = oder & symbol zu finden ist.

Mach dich mit den String Funktionen vertraut. Sind ganz hilfreich.
 

Zurück
Oben