Angenommen, ich habe eine Zeichenfolge wie diese: "http://something.example.com/directory/"
Was ich tun möchte, ist diese Zeichenfolge zu analysieren und die "something"
aus der Zeichenfolge zu extrahieren.
Der erste Schritt besteht darin, zu überprüfen, ob die Zeichenfolge "http://"
enthält. Anderenfalls sollte die Zeichenfolge ignoriert werden.
Aber wie extrahiere ich dann einfach die "something"
in dieser Zeichenkette? Angenommen, alle Zeichenfolgen, die ausgewertet werden, haben eine ähnliche Struktur (dh ich versuche, die Subdomain der URL zu extrahieren - wenn die zu untersuchende Zeichenfolge tatsächlich eine gültige URL ist - wobei die gültige beginnt mit "http://"
) / p>
Danke.
P.S. Ich weiß, wie man den ersten Teil prüft, d. H. Ich kann die Zeichenkette einfach in "http://"
aufteilen, aber das löst nicht das volle Problem, weil dadurch "http://something.example.com/directory/"
erzeugt wird. Alles was ich will ist "something"
, sonst nichts.
Ich würde es so machen:
%Vor%URI ist in Ruby integriert. Es ist nicht das vollste Feature, aber es ist in der Lage, diese Aufgabe für die meisten URLs zu erledigen. Wenn Sie IRIs haben, sehen Sie sich Adressierbar :: URI .
Sie könnten URI wie
verwenden %Vor% und du könntest dann einfach am Host arbeiten.
Oder es gibt ein Juwel domainatrix
von Entfernen Subdomain von String in Ruby
und Sie könnten einfach die Subdomain übernehmen.
Nun, Sie können reguläre Ausdrücke verwenden.
Etwas wie /http:\/\/([^\.]+)/
, das heißt, die erste Gruppe von nicht '.' Briefe nach http.
Schauen Sie sich Ссылка an, Sie können Ihre regulären Ausdrücke auch mit einer Reihe von Tests testen, es ist großartig, um dieses Tool zu lernen:)