2009-07-02 2 views
1

brauchen Hilfe regulären Ausdruck erstellen passenden StringRegulärer Ausdruck auf verschiedenen Hosts genaue URL-Pfad anzupassen

www.*.abc.*/somestring 

hier * ist wild card es anyhing wie sein können uns, uk

oder com, edu

wie

www.us.abc.com/somestring 
www.uk.abc.edu/somestring 
+0

Kann Ihre TLD .CO werden. uk oder .com.au, würde dies einen Unterschied für Ihre Lösung machen –

+0

Was ist TLD? Eigentlich URL kann co.uk enthalten, also versuche ich mit www \. [^.] + \. Abc \. [^.] + \. [^.] + – anand

+0

Wenn ich eine Übereinstimmung eines beliebigen Zeichens machen möchte Wie kann ich das machen? Angenommen, ich habe url www.abc.co.uk/12=1231&wwd=13&eef=1231231 Wie die Zeichenfolge "12 = 1231 & wwd = 13 & eef = 1231231" gibt es keine Beschränkung auf diese, kann es eine beliebige Anzahl/Art enthalten von Charakteren. – anand

Antwort

7

Setzen Sie [^.]+ statt Sternchen und \. anstelle von Punkten, und Sie werden fertig sein.

www\.[^.]+\.abc\.[^.]+/somestring 

[^.] stimmt mit einer Nicht-Punktspieler [^.]+ eine Zeichenfolge von nondots mit wenigstens einem Zeichen. \. entspricht einem Punkt, weil . mit einem beliebigen Zeichen übereinstimmt.

0

Wenn es sich um eine URL handelt, kann sie mit einem beliebigen a-z Zeichen oder 0-9 oder einem Bindestrich (-) übereinstimmen. Jede Komponente hat mindestens ein Zeichen. Verwenden Sie daher + als Multiplikator. Derzeit sind tlds nur a-z, aber diese Regex ist ein bisschen robuste (man weiß ja nie!):

/www\.[-a-z0-9]+?\.abc\.[-a-z0-9]+?\/somestring/ 

Er geht davon aus nichts über die Länge der einzelnen Komponenten, und dass es klein geschrieben.

+0

Sie haben Recht, aber was ist, wenn Sie sich auf die Ländercodes oder Top-Level-Domainnamen (und nur diese) beschränken wollen? [az] würde ausreichen. – VonC

+0

[a-z], aber sonst hast du recht. Ich erwähne das in meiner Antwort sowieso :) –

1

Versuchen Sie, die folgenden regulären Ausdruck:

^www\.\w+\.abc\.\w+\/\w+$ 
0

So etwas:

www\.\w+\.abc\.\w+\/somestring 

ich diesen Online RegEx builder zu verwenden empfehlen zu lernen, wie es funktioniert