Changes between Version 9 and Version 10 of LogParser


Ignore:
Timestamp:
Jul 4, 2008, 5:48:51 PM (16 years ago)
Author:
waue
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • LogParser

    v9 v10  
    7979將正規表示式的字串當引數輸入之後,就可以得到一個p的Pattern物件,而此正規表示式:[[br]]
    8080'''([^ ]*) ([^ ]*) ([^ ]*) \\[([^]]*)\\] \"([^\"]*)\" ([^ ]*) ([^ ]*) \"([^\"]*)\" \"([^\"]*)\".*''' [[br]]
    81 對應到的apache log格式為:[[br]]
    82 ''140.110.138.176 - - [02/Jul/2008:16:55:02 +0800] "GET /hbase-0.1.3.zip HTTP/1.0" 200 10249801 "-" "Wget/1.10.2" ''''[[br]]
     81若apache log範例為:[[br]]
     82140.110.138.176 - - [02/Jul/2008:16:55:02 +0800] "GET /hbase-0.1.3.zip HTTP/1.0" 200 10249801 "-" "Wget/1.10.2" [[br]]
     83則此正規表示法可看成[[br]]
     84
     85 || 1 || 2 || 3 || 4 || 5 || 6 || 7 || 8 || 9 ||
     86 || ([^ ]*) || ([^ ]*) || ([^ ]*) || \\[([^]]*)\\] || \"([^\"]*)\" ||  ([^ ]*) || ([^ ]*) || \"([^\"]*)\" || \"([^\"]*)\".* ||
     87 || ip || - || - || 時間 || "http " || 回傳碼 || 長度 || "指引" || "代理器" ||
     88 || 140.110.138.176 || - || - || [02/Jul/2008:16:55:02 +0800] || "GET /hbase-0.1.3.zip HTTP/1.0" || 200 || 10249801 || " -" || "Wget/1.10.2" ||
     89
    8390在此可以把Pattern 當成是一個雛型類別,用compiler(表示式) 則告知了 以"表示式"為規則產生一個p的模板出來
    8491----------------------------
     
    106113接著定義建構子,宣告了一個 [http://java.sun.com/javase/6/docs/api/java/util/regex/Matcher.html java.util.regex.Matcher] 此物件可以用來與之前的 Pattern搭配。[[br]] 剛剛宣告的模板p有個函數 matcher(String) ,此功能會將材料(String敘述 )壓印成模板的形狀,並把這個壓出物件叫做matcher。 之後要取用matcher的第n段,只要用matcher.group(n)就可以把第n段的內容以String的形式取回。[[br]]
    107114回頭對照傳近來的內容
    108  || 1 || 2 || 3 || 4 || 5 || 6 || 7 ||
    109  || ip || - || - || 時間 || "http " || 回傳碼 || 長度 || "指引" || "代理器" ||
    110  || 140.110.138.176 || - || - || [02/Jul/2008:16:55:02 +0800] || "GET /hbase-0.1.3.zip HTTP/1.0" || 200 || 10249801 || " -" || "Wget/1.10.2" ||
     115
    111116
    112117[[br]]