我對正則表達式很陌生,但我已經完成了我的研究,足以將它們放在一起。不幸的是我碰到了一塊。我將在PHP preg_match中使用這個正則表達式來解析幾個服務器日誌並返回特定的字符串,如「My String」中的示例。正則表達式在日誌文件中查找字符串並將字符串分成若干部分
我正則表達式:
\b([0-9\:]+)\s\"ANTIHAKE\sFOUND:\s+(.*?)\s\(([^)]+)\)\s+REASON:\s+(.*?)\s+\(([^)]+)\)"
我的字符串:
15:34:51 "ANTIHAKE FOUND: Kevin (106534790) REASON: Global Var (Monky_hax_toggled)"
最終我的目標是要拉出共有5個變量:
時間 - 「十五時34分51秒」
名稱 - 「Kevin」
UID - 「106534790」
原因 - 「Global Var」
特定原因 - 「Monky_hax_toggled」
我遇到的一個特定問題是捕獲原因。我似乎無法弄清楚如何捕獲「全局變量」作爲一個字符串,包括空白。有人會幫助我嗎?
謝謝!
喬恩
我只想補充一點,所有的5個變量將是動態的。 「 」「ANTIHAKE FOUND:」和「REASON:」將始終是靜態的,時間格式也一樣 – 2013-03-20 08:39:52
您的正則表達式已經正常工作了,請參閱http://viper-7.com/WcgfQn – 2013-03-20 08:40:48
我必須爲太長了,謝謝澄清,太快了,反應也很快!你太棒了。 – 2013-03-20 08:48:02