我的目录中有多个文件,文件包含多个字符串,例如:
详情:0 5453 293
详情:1 4223 123
详情:2 8885 231
问题在于,由于我有多个文件,因此每个文件都有不同的细节和不同的数字。
如何更换0,1和2之后的所有数字?
我无法做到:
.replace("详情:0 5453 293","详情:0");
因为我不知道其他文件在0之后有什么数字。
答案 0 :(得分:1)
您可以将字符串。 replaceAll
方法与正则表达式一起使用来执行此操作。
使用Lookaround断言:
String s = "Details: 2 8885 231";
s = s.replaceAll("(?<=^Details: \\d).*", "");
System.out.println(s); //=> "Details: 2"
或使用捕获组:
String s = "Details: 2 8885 231";
s = s.replaceAll("^(Details: \\d).*", "$1");
System.out.println(s); //=> "Details: 2"
答案 1 :(得分:0)
您可以使用regex
删除所有4位和3位数字
<强>样品:强>
String s = "Details: 0 5453 293";
s = s.replaceAll("[0-9][0-9][0-9]+", "");
System.out.println(s);
<强>结果:强>
Details: 0