2010-04-22 117 views
0

我要尋找一個正則表達式查詢,讓我從一個字符串檢索值 這裏是我的字符串的例子:正則表達式查詢來獲取字符串值

home.aspx?StudyID=0020101&aa=72 
randompage.aspx?studyid=3023603&aa=40 
myconfig.aspx?studyid=0021600&aa=40 

我需要得到的數值'studyid'變量,請注意,頁面的名稱將改變,所以只是做子字符串和計數字符空間不起作用

我不幸地不能使用request.querystring方法,因爲這個字符串存儲在數據庫中,語句將用於運行此正則表達式查詢

由於

+0

你使用什麼編程語言或程序? – badp 2010-04-22 16:00:16

回答

0
/studyid=([^&]*)&/i 

第一組將包含該變量。

2
/studyid=(\d{7})/i 
+1

我會建議不要使用{7}量詞。我不會推薦這個,因爲他沒有說明studyID會有多長。如果長度超過7個字符,那麼你的正則表達式會爆炸。 – 2010-04-22 15:48:36

+2

@george:如果值與此不同,那麼OP需要提供相關示例。 – SilentGhost 2010-04-22 15:52:49

+0

一般是7字符,所以應該沒問題 謝謝 – Alex 2010-04-22 16:52:28

1

使用可以使用圓括號在正則表達式中捕獲值。

因此,您可以將字符串匹配到studyid=(\d+)並使用$ 1獲取該值。