首页 新闻 搜索 专区 学院

PTA字符串替换,总有一个点个不去

0
悬赏园豆:10 [已解决问题] 解决于 2020-04-13 11:06

题目:
7-1 字符串替换 (10分)

将文本文件中指定的字符串替换成新字符串。 由于目前的OJ系统暂时不能支持用户读入文件,我们编写程序从键盘输入文件中的内容,当输入的一行为end时,表示结束。end后面有两个字符串,要求用第二个字符串替换文本中所有的第一个字符串。
输入格式:
Xi’an Institute of Posts and Telecommunications is co-designed and implemented by the People’s Government of Shaanxi Province and the Ministry of Industry and Information Technology. The Institute is located in Xi’an, a historic city in Northwest China, famous for its magnificent ancient culture.
end (表示结束)
Institute (第一个字符串,要求用第二个字符串替换)
University (第二个字符串)
输出格式:
Xi’an University of Posts and Telecommunications is co-designed and implemented by the People’s Government of Shaanxi Province and the Ministry of Industry and Information Technology.The University is located in Xi’an, a historic city in Northwest China, famous for its magnificent ancient culture.
输入样例:
Xi’an Institute of Posts and Telecommunications is co-designed and implemented by the People’s Government of Shaanxi Province and the Ministry of Industry and Information Technology.
The Institute is located in Xi’an, a historic city in Northwest China, famous for its magnificent ancient culture.
end
Institute
University

输出样例:
Xi’an University of Posts and Telecommunications is co-designed and implemented by the People’s Government of Shaanxi Province and the Ministry of Industry and Information Technology.The University is located in Xi’an, a historic city in Northwest China, famous for its magnificent ancient culture.
我的代码:
import java.util.Scanner;
public class Main{
public static void main(String[] args){
Scanner in=new Scanner(System.in);
String string="";
while(in.hasNextLine()){
String s=in.nextLine();
if(s.equals("end")){
break;
}
else{
string=string+s;
}
}
String a=in.nextLine();
String b=in.nextLine();
System.out.println(string.replaceAll(a,b));
}
}

菜根花小宝贝的主页 菜根花小宝贝 | 初学一级 | 园豆:197
提问于:2020-04-12 16:42

看上去是丢掉了换行符。

。淑女范erり 1年前

@。淑女范erり: 不是,我自己今天测出来了

菜根花小宝贝 1年前

@。淑女范erり: @。淑女范erり:代码如下:
文本有换行的时候,去掉换行,中间也没有空格,上面的错误是这种情况多个空格
import java.util.Scanner;
public class Main{
public static void main(String[] args){
Scanner in=new Scanner(System.in);
String string="";
while(in.hasNextLine()){
String s=in.nextLine();
if(s.equals("end")){
break;
}
else{
string=string+s+"\n";
}
}
String a=in.nextLine();
String b=in.nextLine();
string.replaceAll("\n","");
System.out.print(string.replaceAll(a,b));
}
}

菜根花小宝贝 1年前
< >
分享
最佳答案
0

自己测出来了,哈哈,开心,代码如下:
文本有换行的时候,去掉换行,中间也没有空格,上面的错误是这种情况多个空格
import java.util.Scanner;
public class Main{
public static void main(String[] args){
Scanner in=new Scanner(System.in);
String string="";
while(in.hasNextLine()){
String s=in.nextLine();
if(s.equals("end")){
break;
}
else{
string=string+s+"\n";
}
}
String a=in.nextLine();
String b=in.nextLine();
string.replaceAll("\n","");
System.out.print(string.replaceAll(a,b));
}
}

菜根花小宝贝 | 初学一级 |园豆:197 | 2020-04-13 10:41
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册