编写一个程序,从标准输入设备上输入一行英文语句。敲击回车后对该语句进行处理,对每个(逗号,句号,感叹号和问号除外)单词进行反向处理操作,且保持原语句顺序,将处理完毕的结果输出在标准输出设备上。
举例一:
输入:
1
|
This is a very simple problem.
|
1
|
ishT si a yrev elpmis melborp.
|
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class T001_UT001_0019
{
public static void main(String[] args)
{
String njp_regex=" |,|\\?|\\.|\\!",njp_regex1=" ",njp_regex2=",",njp_regex3="\\?",njp_regex4="\\.";
Scanner njp_input=new Scanner(System.in);
String njp_str=njp_input.nextLine();
String[] njp_str_list = njp_str.split(njp_regex);
char[] njp_sign=new char[njp_str_list.length];
Matcher njp_matcher1=Pattern.compile(njp_regex1).matcher(njp_str);
Matcher njp_matcher2=Pattern.compile(njp_regex2).matcher(njp_str);
Matcher njp_matcher3=Pattern.compile(njp_regex3).matcher(njp_str);
Matcher njp_matcher4=Pattern.compile(njp_regex4).matcher(njp_str);
for(int i=0;i<njp_str_list.length;i++)
{
if(njp_matcher1.find())
njp_sign[i]=' ';
else if(njp_matcher2.find())
njp_sign[i]=',';
else if(njp_matcher3.find())
njp_sign[i]='?';
else if(njp_matcher4.find())
njp_sign[i]='.';
else
njp_sign[i]=' ';
}
for (int i = 0; i < njp_str_list.length; i++)
{
StringBuffer njp_StringBuffer = new StringBuffer(njp_str_list[i]);
System.out.print(njp_StringBuffer.reverse().toString()+njp_sign[i]);
}
}
}