JavaScript indexOf () - wie man einen bestimmten Index bekommt

8

Sagen wir, ich habe eine URL:

%Vor%

und ich möchte erhalten, was nach der dritten Instanz von / ist?

etwas wie das Äquivalent von indexOf() , mit dem ich die gewünschte Instanz des Backslashs eingeben kann.

    
Itai Sagi 27.09.2011, 13:49
quelle

8 Antworten

6

Wenn Sie wissen, dass es mit http:// oder https:// beginnt, überspringen Sie einfach diesen Teil mit diesem Einzeiler :

%Vor%

Dies gibt Ihnen mehr Flexibilität, wenn in dem gewünschten Segment mehrere Schrägstriche vorhanden sind.

    
Kelly 27.09.2011, 13:52
quelle
3
%Vor%     
PiTheNumber 27.09.2011 13:53
quelle
1

Wenn Sie bei indexOf bleiben möchten:

%Vor%

Wenn Sie den Pfad der angegebenen URL abrufen möchten, können Sie auch eine RE verwenden:

%Vor%

Dieser RE sucht nach " // ", akzeptiert alles zwischen " // " und dem nächsten " / " und gibt ein Objekt zurück. Dieses Objekt hat mehrere Eigenschaften. propery [1] enthält die Teilzeichenfolge nach dem dritten / .

    
Rob W 27.09.2011 13:52
quelle
1

Ein anderer Ansatz besteht darin, die Javascript-Funktion "Split" zu verwenden:

%Vor%

splittedWord [0] würde "mich" zurückgeben

splittedWord [1] würde "you"

zurückgeben

splittedWord [2] würde "etwas" zurückgeben

    
bjornruysen 27.09.2011 13:54
quelle
1

Es klingt, als ob du pathname willst. Wenn Sie sich in einem Browser befinden, halten Sie ein Element a bereit ...

%Vor%

... und lass das Parsing für dich machen.

%Vor%

DEMO: Ссылка

    
user113716 27.09.2011 14:10
quelle
0

In Ihrem Fall könnten Sie die Methode lastIndexOf() verwenden, um den 3. Schrägstrich zu erhalten.

    
Pat 27.09.2011 13:52
quelle
0

Versuchen Sie etwas wie die folgende Funktion, die den Index des n-ten Vorkommens der Suchzeichenkette s zurückgibt, oder -1, wenn es n-1 oder weniger Übereinstimmungen gibt.

%Vor%

Wenn Sie die Funktion nicht zu String.prototype hinzufügen möchten, können Sie sie natürlich als Standalone-Funktion verwenden, indem Sie einen weiteren Parameter hinzufügen, um die zu suchende Zeichenfolge zu übergeben.

    
nnnnnn 27.09.2011 14:30
quelle
0

Hier ist eine sehr coole Art, das zu handhaben: Wie kann ich alle Zeichen bis einschließlich des 3. Schrägstrichs in einer Zeichenfolge entfernen?

Meine Präferenz der vorgeschlagenen Lösungen ist

%Vor%     
erlingormar 22.04.2013 08:41
quelle

Tags und Links