我是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 回答