2013-10-30 64 views
0

我有一個XML文件,其中包含電子郵件地址作爲每個記錄的一部分。我想隱藏電子郵件地址(爲了保護隱私),但如果同一電子郵件地址中存在多個電子郵件地址,則還要保留其「統一性」以允許合併記錄(在此情況下爲購買)。正則表達式來替換字符串前後的一些字符

想通過使用正則表達式替換「@」前後的字符*或類似的方法。在保留隱私之前和之後(大部分)保持「唯一性」,確保3或4個字符。

關於最佳方式的建議(包括一些完全不同的選項,比我想的)?

謝謝。

+0

你可能正在計劃以特定的語言做到這一點。你可能想指定。 – AngelWarrior

+0

我相當開放,但很好。可以使用文本編輯器,但願意在JavaScript或PHP中使用它。 – jonmrich

回答

1

正則表達式看起來像這樣:([^ @] {1,4})@(。{1,4}),它在@之前和之後最多有4個字符。

你將如何做替換取決於你的語言,以及你如何加載文件。如果你只是在做這一次,在一個文本編輯器像超編輯,而不是在一個節目的中間,那麼我會做這樣的事情:

Replace all [^@>]@[^<] with *@* 
Replace all [^@>]{2}@[^<]{2} with **@** 
Replace all [^@>]{3}@[^<]{3} with ***@*** 
Replace all [^@>]{4}@[^<]{4} with ****@**** 

這樣,它仍然會做簡短的電子郵件地址的東西。 (調整爲不包括你的xml標籤)

+0

完美。謝謝。 – jonmrich