※ 引述《analulu (小晶)》之銘言:
: 各位先進 ,大家好~~
: 小弟目前遇到一個問題:
: 假設我有一個日誌檔,專門記錄 IP 的情況,
: 假設內容如下:
: good 1.1.1.1
: bad 2.2.2.2
: bad 127.0.0.1
: bad 192.168.1.1
: bad 5.5.5.5
: good 3.3.3.3
: 請問我要如果找出 是 bad 開頭,但 不包含 127.0.0.1 以及 192.168 開頭的 記錄?
: 而且 它必須只用一個 regex 來表示(因為這不是完整的perl script,它只是一個會被
: perl 讀取的設定檔)
: 我知道可以用 /^bad (.*)/ 來找出所有 bad 開頭的記錄,
: 但是 找了很多資料,好像都沒有說如何 過濾 "字串"??
: 如果我用 [^127] 這是指 1, 2, 7 開頭的都不考慮, 而不是指 "127"這個字串,
: 請各位高手幫幫忙~~~
: 或是您有任何建議也可以告知,有可能是我思考的方向錯誤!!
: 煩請指教!! 謝謝
--
DO NOT disturb my programs!
--
From Archimedes' last word,
and may be my last word.
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.244.211
用negative look-ahead
/^bad (?!127\.0\.0\.1|192.168)/