2011-04-17 65 views
0

我需要在日誌文件中解析來自行的幾個名稱值對。正則表達式問題 - 需要確保我得到正確的東西

其中一個名字是'ruser = data',另一個是'user = data'。

兩者將在同一行上。

我怎樣才能確保當我匹配'用​​戶'我沒有得到魯瑟數據?

非常感謝

編輯:

我使用JavaScript和我已經試過:

var u = line.match(/user=\w+/); 
var user = u[0].replace(/(^user=*)/, ""); 
var r = line.match(/ruser=\w+/); 
var ruser = r[0].replace(/(^ruser=*)/, ""); 

非常感謝

+0

嗨,喬,什麼語言?你試過的正則表達式是什麼? – 2011-04-17 14:01:12

+0

什麼是分隔符?逗號,分號,空格等?例如它是「ruser = data,otherkey = data,user = data」 – Jim 2011-04-17 14:08:54

+0

對不起,分隔符是空格 – Joe 2011-04-17 14:10:03

回答

1
/\buser=\w+/ 

/\bruser=\w+/ 

應該工作。 \b是一個字邊界錨,只匹配字母數字「單詞」的開始/結尾。

+0

Ahh OK。我想知道他們是如何使用的。那很棒。乾杯 – Joe 2011-04-17 14:16:57