编写Java程序删除一个字符串中所有的非数字字符,字符串从键盘输入
时间: 2024-05-02 13:19:08 浏览: 20
可以使用Java的正则表达式来实现这个功能,示例代码如下:
```
import java.util.Scanner;
public class RemoveNonnumericCharacters {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入一个字符串:");
String str = input.nextLine();
//使用正则表达式替换非数字字符为空字符串
String result = str.replaceAll("[^\\d]", "");
System.out.println("去掉非数字字符后的字符串是:" + result);
}
}
```
运行程序,输入一个字符串,比如说:“abc123def456”,输出结果就是:“去掉非数字字符后的字符串是:123456”。
相关问题
java编写程序,从键盘输入一行字符串,统计其中数字字符出现的次数。 说明:数字字符
数字字符是指0-9之间的字符。要统计出现的次数,需要遍历字符串中的每个字符,判断是否为数字字符,如果是,则计数加1。
可以使用Java中的字符的ASCII码值来判断是否为数字字符。0-9的ASCII码分别是48-57。
编写程序如下:
```java
import java.util.Scanner;
public class CountDigits {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一行字符串:");
String input = scanner.nextLine();
int count = 0; // 计数器,统计数字字符的出现次数
// 遍历字符串中的每个字符
for (int i = 0; i < input.length(); i++) {
char c = input.charAt(i);
// 判断字符是否为数字字符,ASCII码值在48-57之间
if (c >= 48 && c <= 57) {
count++;
}
}
System.out.println("数字字符出现的次数:" + count);
}
}
```
以上程序中,通过Scanner从键盘读取一行字符串。然后遍历字符串中的每个字符,判断字符是否为数字字符(即判断ASCII码值是否在48-57之间),如果是,则计数器加1。最后输出统计结果。
使用Java编写,从键盘输入一个字符串和一个字符,从该字符串中删除给定的字符
```
import java.util.Scanner;
public class DeleteCharacter {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个字符串:");
String str = scanner.nextLine();
System.out.print("请输入要删除的字符:");
char c = scanner.nextLine().charAt(0);
String result = deleteCharacter(str, c);
System.out.println("删除后的字符串为:" + result);
}
private static String deleteCharacter(String str, char c) {
StringBuilder sb = new StringBuilder();
for (int i = 0; i < str.length(); i++) {
char ch = str.charAt(i);
if (ch != c) {
sb.append(ch);
}
}
return sb.toString();
}
}
```