2014-02-07 30 views
0

目前排除一個字符串,我使用下面的正則表達式來過濾網址:從查詢

2014/^[0-9]+$ 

不過,我需要修改這是能夠accomidate這樣的事情:

2014/54648/aslug 

我想從比賽中排除aslug部分,所以我只獲得2014/54648作爲比賽,但我不知道如何執行此操作。

2014/^[0-9]+$查詢

2014/51643/mary < exclude from the results 
2014/36544/  
2014/46454/mike < exclude from the results 
2014/51643/julie < exclude from the results 
+1

請閱讀[問]。 – AJMansfield

+0

你是指什麼「排除」比賽?你想它匹配的網址,然後從網址中刪除'aslug'部分?或者你希望它匹配但只捕獲'2014/54648'部分,而不是捕獲'/ aslug'?或者,如果網址有'/ aslug',那麼正則表達式不匹配,只會匹配'2014/[0-9] +'?你的問題不清楚。 – MElliott

+0

是的,「正則表達式應該只匹配'2014/[0-9] +'」字符串 – Talha

回答

1

試試這個:

^2014/[0-9]+ 

剛取出$應該夠了。

2014/51643/mary不匹配,因爲^2014/[0-9]+$要求最後一個字符應該是數字。所以^2014/[0-9]+應該是足夠的,因爲它會匹配'2014 /',然後是所有後續字符,直到它們是數字。

另外^[0-9]應該只有[0-9]^應僅用於表示字符串的開始或是組否定(例如/ [^ xyz] */g將匹配字符串的每個字符,即而不是字母x,y或z)

+0

不應該是'/ 2014/^ [0-9] + $/^(?:/ \ w *)? $ /' – Talha

+0

@Talha answer updated .. – cvsguimaraes

0

結果這是否對你的工作?

(2014\/[0-9]+)\/\w+ 

的\ w是「任何單詞字符」,其包括下劃線,並且括號標記密閉部分作爲可以在匹配,而「\ 1」或一些這樣的取決於你是庫參考結果使用。