我正在比較大量的字符串(日誌條目)來驗證某些系統結果沒有改變。我的第一次嘗試足夠直接,只是使用.equals()比較。如果.equals()失敗。與正則表達式差異的Java字符串比較?
只有當我的系統結果記錄在同一天時,這才起作用。部分數據包括訪問時間戳。我不介意訪問日期是否不同,這是我擔心的其餘有效負載。
由於從琴絃,我比較的一小部分例子:
...3X68 : accessed 14 Oct 2014 : from quo...
...3X68 : accessed 16 Oct 2014 : from quo...
的字符串有我想忽略「訪問的DD MMM YYYY」標籤的多種情況,一般在5- 10,但在某些情況下,數據可能是數百千字節,數百個數據塊,每個數據塊都有一個訪問郵票的副本。 (是的,刪除冗餘是名單上。)
我已經嘗試了幾次與正則表達式「accessible \ d \ d ... \ d \ d \ d \ d \ d」不匹配的嘗試,但由於子字符串可能會出現多次,我最終用幾個這樣的搜索來編寫正則表達式測試,但由於它可能會出現一百次或更多次,這很快就不切實際了。
有什麼更好的方法來運行這種類型的字符串比較異常?直接或通過利用圖書館?
欣賞它。這種方法奏效了。此外,很高興知道進行替換的匹配器,但我擔心可能會拆分一串子串段的內存要求。在某些情況下,有幾百兆字節的日誌,我擔心Java的字符串內存問題。迄今爲止內存並沒有爆炸得太厲害。 – Bryan 2014-10-17 15:52:00