import java.util.Scanner; // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); // 注意 hasNext 和 hasNextLine 的区别 while(in.hasNext()){ String s=in.nextLine(); s=s.replaceAll("[^A-z\\[\\]\\^_'\\$\\\\]",""); s=s.replaceAll("\\$","\\^"); System.out.println(s); } } }
直接用java的正则表达式即可,然后就是题目中并没有说需要将$转为^,但是不转就会出错