Java中把字符串内非数字字符删掉
时间: 2023-09-21 10:02:35 浏览: 65
可以使用正则表达式来删除字符串中的非数字字符,示例代码如下:
```java
String str = "a1b2c3";
str = str.replaceAll("\\D+", "");
System.out.println(str); // 输出 123
```
其中,`\\D+` 表示匹配所有非数字字符,`replaceAll()` 方法用于将匹配到的字符替换为空字符串。
相关问题
java中删除字符串中的某个字符或者字符串
在 Java 中,可以使用 `replace()` 或 `replaceAll()` 函数来删除字符串中的某个字符或字符串。这里有两个例子:
1. **删除单个字符**:
如果你想替换字符串中的某个特定字符,例如 "a",你可以这样做:
```java
String originalString = "Hello World!";
char characterToRemove = 'o';
String newString = originalString.replace(characterToRemove, "");
System.out.println(newString); // 输出 "Hell Wrld!"
```
2. **删除所有指定字符或字符串**:
如果你想删除所有特定字符的实例,如所有的空格,可以使用 `replaceAll()` 和正则表达式:
```java
String originalString = "Hello World! This is a test.";
String pattern = "\\s+"; // 正则表示匹配一个或多个空格
String newString = originalString.replaceAll(pattern, "");
System.out.println(newString); // 输出 "HelloWorld!Thisisatest."
```
**相关问题--:**
1. `replace()` 和 `replaceAll()` 有何区别?
2. 使用正则表达式删除字符时,`\\s+` 表示什么意思?
3. 删除字符串中的子串时有没有其他方法?
java如何删除字符串中指定位置的字符
在Java中,如果你想要删除字符串中指定位置的字符,你可以选择创建一个新的字符串,跳过需要删除的字符。这里有一个简单的例子:
```java
public class Main {
public static void main(String[] args) {
String str = "Hello World!";
int positionToRemove = 6; // 指定要删除的位置
// 使用substring()方法从原字符串中获取部分,忽略指定位置的字符
String modifiedStr = new StringBuilder(str).deleteCharAt(positionToRemove).toString();
System.out.println("Original string: " + str);
System.out.println("Modified string (after removing character at position " + positionToRemove + "): " + modifiedStr);
}
}
```
在这个示例中,`StringBuilder.deleteCharAt()`方法用于删除指定索引处的字符。注意,索引是从0开始计数的,所以位置6代表的是字母"W"。
阅读全文