2014-03-13 7 views
0

我有一個日誌文件來分析比賽,像這樣正則表達式 - 如何找到之前最接近otehr

12:14 (東西) 13:15 (東西) 13: 16 (東西) 壓水堆= 123 (東西) 13點17分 (東西) 13時18分 (東西) 壓水堆= 456 (東西)

我想找到「Pwr =」後面的所有數字,並與之前的時間戳配對?所以在這一天結束時,我會有雙: 13:16 123 13:18 456

非常感謝提前!

回答

0

壓水堆值假定不每個條目除了(東西)包含字符,數字或下劃線之外的東西

在單獨的行中,這會將時間戳提取到捕獲組1中,並將捕獲組2中的功率值提取出來210
(\d{2}:\d{2})\s\(\w+?\)\sPwr=(\d+) 
0

假設每個條目是一條線,

^(\d+:\d+).*Pwr=(\d+).*

這將會把一個HH:MM時間戳捕獲組1,並在捕獲組2

+0

這將捕獲整個字符串,如果不是每個條目都在一行 – blueygh2

+0

@ blueygh2我提到了附帶條件。因爲什麼「東西」不是很清楚(如果某些東西可以是00:00會發生什麼?),當日志條目沒有分隔時,這實際上很難做到。 –

+0

設計一個正確的正則表達式是非常棘手的,如果它不清楚什麼*東西*可以 – blueygh2