URL "beginnt mit" verwenden von regex?
Sagen, ich habe die folgende url:
Wie kann ich einen regex zu entsprechen, wird jede url, die beginnend mit das url-segment oben?
Beispiel:
http://example.com/api/auth (sollte passen)
http://example.com/api/orders (sollte passen)
http://example.com/api/products (sollte passen)
http://example.com/auth (soll nicht passen)
http://examples.com/api/auth (soll nicht passen)
https://example.com/api/auth (soll nicht passen)
Ja, natürlich, ich könnte einfach anrufen string.indexOf(url) == 0
zu tun, eine "beginnt mit" - check, aber ich speziell brauche einen regulären Ausdruck, da ich eine von einem Drittanbieter-Bibliothek.
Versuchen Sie, eine Sache oder 2 selbst, ersten. Dann sagen Sie uns, wenn Sie einen string, aus dem ein regex erstellt werden (
new RegExp
argument != /pattern/
)InformationsquelleAutor XåpplI'-I0llwlg'I - | 2014-09-19
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den
^
modifier zu Beginn der Ausdruck bedeutet "string beginnt mit":Wenn Sie mit einer anderen Sprache, die unterstützt alternative Trennzeichen, dann wäre es wahrscheinlich Wert, da die URL enthält
/
s in es. Diese nicht funktioniert in Javascript (h/t T. J. Crowder), aber nicht in Sprachen wie PHP (einfach nur zu erwähnen es der Vollständigkeit halber):Können Sie diese in JavaScript, aber:
Es ist auch erwähnenswert, dass dieses match
http://example.com/apis-are-for-losers/something
, weil Sie nicht die Prüfung für einen/
nachapi
- nur etwas zu Bedenken. Um das zu beheben, können Sie einen Wechsel am Ende erfordern entweder, dass Sie am Ende der Zeichenfolge oder, dass das nächste Zeichen ein/
:Gut, Sie können immer mit den RegExp-Konstruktor und übergeben Sie eine Zeichenfolge in, though.
Sehr wahr. Das ist in der Regel mehr ärger als es Wert ist, weil das string-literal Regeln, aber in diesem Fall, es kann gut sein, klarsten.
InformationsquelleAutor Joe
Warum ein regex, wenn der Suchbegriff konstant ist?
InformationsquelleAutor Toto
Da es auf javascript basiert, können Sie versuchen, diese
.*
etwas von Ihrem Muster, Sie suchen ein Spiel fürYou should match
alles, was folgt, das match ist irrelevantOw ja, du hast Recht, danke
InformationsquelleAutor andrex
Regex link
InformationsquelleAutor Steven
Können Sie einen 'Anker', um übereinstimmung am Anfang (oder Ende) einer Zeichenfolge.
Mehr info: http://www.regular-expressions.info/anchors.html
InformationsquelleAutor Tom Ritsema