java清洗字符串 要求只保留数字和逗号 不改变数字的含义
时间: 2023-11-27 11:49:50 浏览: 86
可以使用正则表达式过滤掉非数字和非逗号的字符,如下所示:
```java
String str = "abc123,456.78def";
str = str.replaceAll("[^\\d,]", "");
```
上述代码中,`^\\d,` 表示匹配非数字和非逗号的字符,`[^...]` 表示取反,即匹配除了数字和逗号以外的字符。`replaceAll()` 方法将匹配到的字符替换为空字符串,从而实现了清洗字符串的效果。
执行上述代码后,字符串 `str` 的值为 `"123,45678"`,只保留了数字和逗号,并且没有改变数字的含义。
相关问题
java清洗字符串 要求只保留数字和逗号
你可以使用正则表达式来清洗字符串,只保留数字和逗号。具体实现可以参考下面的代码:
```java
String str = "1a2,b3c4d5";
String cleanedStr = str.replaceAll("[^0-9,]", "");
System.out.println(cleanedStr); // 输出:1,2,3,4,5
```
这里的 `replaceAll` 方法会用空字符串替换掉所有不是数字和逗号的字符。正则表达式 `[^0-9,]` 表示匹配除数字和逗号以外的任意字符,`^` 符号在正则表达式中表示取反的意思,即不匹配数字和逗号。
阅读全文