【发布时间】:2016-01-06 11:43:16
【问题描述】:
我有一个如下所示的输入字符串:
- Z43524429
- 46D92S429
- 3488DFJ33
基本上,字符串可以包含字母字符或数字。但是它不能包含符号,只能包含字母和数字。我想掩盖它,使它看起来像这样:
- *****4429
- *****S429
- *****FJ33
我到处寻找使用正则表达式来掩盖这一点的 java 代码示例。我在堆栈上找到了this post,但这假设输入纯粹是一个数字。
我将正则表达式调整为 /\w(?=\w{4})/g 以包含字符。它似乎工作here。但是当我尝试在java中实现它时它不起作用。这是我的 java 代码中的一行:
String mask = accountNumber.replace("\\w(?=\\w{4})", "*");
掩码最终与 accountNumber 相同。所以显然正则表达式不起作用。有什么想法吗?
【问题讨论】:
-
将
replaceAll用于正则表达式 -
如果字符串始终具有相同的格式,则不需要正则表达式。构建一个以五个
*开头并以原始字符串的最后四个字符结尾的新字符串。 -
谢谢你的问题顺便说一句。因此,我找到了用于字符串屏蔽的正则表达式。很有帮助..