我是java中的新手。我想确定字符串的最后一个字符是否是元音(即aieou)。例如,如果字符串是abcde,那么就可以了。但如果是eaoid,那就错了。
9509 次
2 回答
10
str.matches(".*[aeiou]$");
.*匹配任何字符零次或多次
[aeiou]匹配集合中的一个字符
$匹配字符串的结尾。
所以"abcde".matches(".*[aeiou]$") == true和"eaoid".matches(".*[aeiou]$") == false
于 2013-05-08T04:26:41.590 回答
5
java中的matches()方法必须是整个字符串才能返回true,因此您需要以字符类开始正则表达式.*并以字符类(字符列表周围的方括号)结束它,这是表示“其中一个”的正则表达式方式人物”
如果要匹配以大写或小写元音结尾的字符串:
str.matches(".*[AEIOUaeiou]");
或者更简单地说:
str.matches(".*(?i)[aeiou]");
正则表达式的(?i)意思是“忽略大小写”
于 2013-05-08T04:34:43.017 回答