我正在嘗試編寫一個正則表達式來匹配擴展公用日誌格式。我有一個表達式來匹配大多數日誌條目,但在列出多個主機時會失敗。正則表達式與多主機匹配擴展公用日誌格式
這是我目前的表現:
([^ ]*) ([^ ]*) ([^ ]*) \[([^]]*)\] "([^"]*)" ([^ ]*) ([^ ]*) "([^"]*)" "([^"]*)"
此匹配成功的標準日誌條目。例如:
24.58.227.240 - - [22/Sep/2011:00:00:00 +0000] "GET /rss/merchant/airsoftpost.com HTTP/1.1" 200 1880 "-" "Apple-PubSub/65"
然而,一些日誌條目包含由逗號分隔的多個主機IP地址:
10.64.233.43, 69.171.229.245 - - [22/Sep/2011:00:00:00 +0000] "GET /view/thesanctuary.co.uk HTTP/1.1" 206 7289 "-" "facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php)"
有人能幫助我解決我的表達式匹配任意數量的主機對於給定的日誌項?
謝謝。