黑马程序员技术交流社区
标题:
把输入英文单词变成复数形式
[打印本页]
作者:
杨浩
时间:
2013-1-31 03:47
标题:
把输入英文单词变成复数形式
请编写一个程序,可以将英语规则名词(不考虑不满足以下规则的英语单词)由单数变成复数。已知规则如下:
a)以辅音字母y结尾,则将y改成i,再加es;
b)以s,x,ch,sh结尾,则加es;
c)以元音o结尾,则加es;
d)其他情况直接加s。
要求用键盘输入英语规则名词,屏幕输出该名词的复数形式。
public class A{
public static void main(String[] args) {
method();
}
public static void method(){
while(true){
Scanner scan=new Scanner(System.in);
String yuan=scan.next();
String hou="";
if(yuan.endsWith("y")){
// a)以辅音字母y结尾,则将y改成i,再加es;
hou=yuan.substring(0,yuan.length()-1)+"ies";//
}
// b)以s,x,ch,sh结尾,则加es;c)以元音o结尾,则加es;
else if(yuan.endsWith("o")||yuan.endsWith("s")||yuan.endsWith("x")||yuan.endsWith("ch")||yuan.endsWith("sh")){
hou=yuan+"es";
}else{
hou=yuan+"s";
}
System.out.println("原来的单词为:"+yuan+",变为复数的单词为:"+hou);
}
}
}
复制代码
不熟悉正则。。谁会用正则的,改写一些,正则,常用的有哪点东西呢?
作者:
小学生0987
时间:
2013-1-31 18:32
用正则表达式就是把if里的.endswith()改为 .matches()里面填正则表达式,以y结尾表示为^[a-z]+y$,判断以什么结尾,把前面的y改为什么就行了。判断以什么结尾一般不会用正则表达式的,正则表达式是用来判断一段字符串是否满足一定格式要求的。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2