C语言实验题——保留整数
描述
输入一个字符串str1,把其中的连续非数字的字符子串换成一个‘*’,存入字符数组str2 中,所有数字字符也必须依次存入 str2 中。输出str2。
输入
输入为一行字符串str1,其中可能包含空格。字符串长度不超过80个字符。
输出
输出处理好的字符串str2。
样例输入
$Ts!47&*s456 a23* +B9k
样例输出
*47*456*23*9*
题目来源
思路分析:
看到此题关于字符串的题目我第一想到的是用java来做,毕竟java处理字符串还是比较方便的,也是出于偷懒的目的。可以用正则表达式将非数字用*代替。
代码如下:
import java.util.regex.*;
import java.io.*;
public class Main {
public static void main(String args[]) throws Exception{
BufferedReader buf=null;
buf =new BufferedReader(new InputStreamReader(System.in));
String str=null;
str=buf.readLine();
String pat="\\D+";
Pattern p=Pattern.compile(pat);
Matcher m=p.matcher(str);
String s=m.replaceAll("*");
System.out.println(s);
}
}