0

我有一个 XML 文件,其中包含电子邮件地址作为每条记录的一部分。我想隐藏电子邮件地址(出于隐私考虑),但如果有多个来自同一个电子邮件地址的记录,我也想保留它们的“唯一性”以允许合并记录(在这种情况下是购买)。

认为可能有一种方法使用正则表达式将“@”之前和之后的字符替换为 * 或类似的。计算前后 3 或 4 个字符可以保护隐私,并且(在大多数情况下)保持“唯一性”。

关于最佳方式的建议(包括一些与我想的完全不同的选项)?

谢谢。

4

1 回答 1

1

正则表达式看起来像这样: ([^@]{1,4})@(.{1,4}) 在 @ 前后最多包含 4 个字符。

您将如何进行替换取决于您的语言以及加载文件的方式。如果您只是在 Ultra Edit 之类的文本编辑器中执行此操作,而不是在程序中间执行此操作,那么我会执行以下操作:

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

这样它仍然会在短电子邮件地址上做一些事情。(调整为不包含您的 xml 标签)

于 2013-10-30T02:22:05.910 回答