首页 > 试题广场 >

判断是否以元音字母结尾

[编程题]判断是否以元音字母结尾
  • 热度指数:40572 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
给定字符串 str,检查其是否以元音字母结尾
1、元音字母包括 a,e,i,o,u,以及对应的大写
2、包含返回 true,否则返回 false
示例1

输入

'gorilla'

输出

true
推荐
首先确定元音集合[a,e,i,o,u],然后是以元音结尾,加上$,最后通配大小写,加上i。因此正则表达式为:/[a,e,i,o,u]$/i,最后用test方法去检测字符串str

function endsWithVowel(str) {
  return /[a,e,i,o,u]$/i.test(str);
 }

编辑于 2015-12-10 11:56:16 回复(10)
function endsWithVowel(str) {
            return /[aeiouAEIOU]$/.test(str)
        }
发表于 2023-09-08 09:28:31 回复(0)
function endsWithVowel(str = '') {
  const vowelArr = ['a', 'e', 'i', 'o', 'u']
  return str ? vowelArr.includes(str[str.length - 1].toLowerCase()) : false
}
发表于 2023-06-29 11:42:44 回复(0)
    function endsWithVowel(str) {
      let ar=['a','e','i','o','u','A','E','I','O','U']
      let strr=str[str.length-1]
      let flag=null
      ar.forEach(item => {
        if(item==strr){
          flag=true
        }
      });
      if(flag){
        return true
      }
      else {
        return false
      }
}
发表于 2023-06-20 10:01:53 回复(0)
也是字符串最后一位的思路,f12里试过也ok,不知道为什么提交的输出总是null
function endsWithVowel(str) {
    let strend = str.toLowerCase().at(-1);
    let vowel = ['a','e','i','o','u'];
    return vowel.includes(strend);
}
发表于 2023-05-18 22:50:00 回复(0)
xdm看看,感觉没问题啊   为啥过不了呢
function endsWithVowel(str) {
  let arr=str.split("").reverse().slice(0,1).join('')
  if(arr==('a'||'e'||'i'||'o'||'u'||'A'||'E'||'I'||'O'||'U')){
    return true
  }
else{
  return false
}
}

发表于 2023-03-23 11:59:52 回复(0)
这就是我的解
function endsWithVowel(str) {
    return ['a','e','i','o','u','A','E','I','O','U'].includes(str[str.length-1])
}

发表于 2023-03-21 11:16:30 回复(0)
function endsWithVowel(str) {
    return /[aeiou]$/i.test(str)
}

发表于 2022-12-06 19:31:45 回复(0)
function endsWithVowel(str) {
    return ['a','e','i','o','u'].includes(str.slice(-1).toLowerCase())
}

发表于 2022-11-28 17:03:48 回复(0)
function endsWithVowel(str) {
    var reg = /a|e|i|o|u|A|E|I|O|U/
    if(reg.test(str[str.length-1])){
        return true
    }
    return false
}

发表于 2022-11-13 04:38:07 回复(0)
function endsWithVowel(str) {
    let lastStr = 'aeiou';
    if(lastStr.indexOf(str.slice(-1).toLowerCase())!==-1){
        return true
    }else{
        return false
    }
}
发表于 2022-10-29 13:25:39 回复(0)
function endsWithVowel(str) {
let flag = false
    let letter = str.charAt(str.length-1)
    switch(letter){
      case'a':
      case'e':
      case'i':
      case'o':
      case'u':
      case'A':
      case'E':
      case'I':
      case'O':
      case'U':
        flag = true
        break
    }
    returnflag
}
/看到各位大佬,突然觉得我写的好low...../
发表于 2022-10-26 10:59:47 回复(0)
function endsWithVowel(str) { let l = str.slice(str.length-1);  return /a|e|i|o|u/.test(l.toLowerCase()); }
发表于 2022-09-08 10:54:41 回复(0)
function endsWithVowel(str) {
    var reg = /['a','e','i','o','u','A','E','I','O','U']$/
    return reg.test(str)
}

发表于 2022-08-19 10:13:49 回复(0)
function endsWithVowel(str) {
    var arr = ['a' , 'e', 'i' , 'o' , 'u']
    var end = str[str.length - 1].toLowerCase()
    return arr.indexOf(end) === -1 ? false : true
}
发表于 2022-06-26 17:06:37 回复(0)
function endsWithVowel(str) {
    return !('AEIOU'.indexOf(str.charAt(str.length - 1).toUpperCase()) === -1)
}

发表于 2022-06-18 18:04:22 回复(0)
function endsWithVowel(str) {
		    let checkArr=['a','e','i','o','u','A','E','I','O','U'];
		    let temp = str.split("").pop();
			for(let i=0;i<checkArr.length;i++){
				if(temp==checkArr[i]){
				    return true
				}
			}
			return false
}
不会正则,之前学过,好长时间不写了

发表于 2022-06-18 15:29:48 回复(0)
includes方法
function endsWithVowel(str) {
  return str && "aeiouAEIOU".includes(str[str.length-1], -1)
}
根据题意想到一个字符串内置方法 endsWith
function endsWithVowel(str) {
  for (let i = 0; i < 10; i++){
    if (str.endsWith('aeiouAEIOU'[i])) {
      console.log('aeiouAEIOU'[i])
      return true
    }
  }
  return false;
}



发表于 2022-05-12 10:51:31 回复(0)
除了方法一 剩下三种差不多思路
        //方法一
        function endsWithVowel(str) {
            return /[a,e,i,o,u]$/i.test(str);
        }
        //方法二
        function endsWithVowel(str) {
            return "aeiouAEIOU".indexOf(str[str.length - 1]) !== -1 ? true : false
        }
        //方法三
        function endsWithVowel(str) {
            let arr = ['a', 'e', 'i', 'o', 'u', 'A', 'E', 'I', 'O', 'U']
            return arr.includes(str[str.length - 1])
        }
        //方法四
        function endsWithVowel(str) {
            let arr = ['a', 'e', 'i', 'o', 'u', 'A', 'E', 'I', 'O', 'U']
            return arr.indexOf(str[str.length - 1]) !== -1 ? true : false
        }

发表于 2022-04-21 13:41:47 回复(0)
return 'AEIOU'.includes(str.charAt(str.length - 1).toUpperCase())
发表于 2022-04-12 17:18:25 回复(0)