Javascript 检查单词是否以元音开头?

Javascript 检查单词是否以元音开头?,javascript,regex,Javascript,Regex,所以我有一个基本的js查询,假设我有 document.getElementById('test').value(); 在这个值中有“Idea”一词 我如何创建一个函数来检查它是否以I或任何元音开头?以最简单的方式?您可以使用正则表达式检查它是否以元音开头 假设将值存储在名为str的变量中,则可以使用以下代码。我将在其中存储值Idea let str=“Idea”; 函数开始使用元音(str){ 设fstLetter=str.charAt(0).toLowerCase(); 如果(fstL

所以我有一个基本的js查询,假设我有

document.getElementById('test').value();
在这个值中有“Idea”一词


我如何创建一个函数来检查它是否以I或任何元音开头?以最简单的方式?

您可以使用正则表达式检查它是否以元音开头


假设将值存储在名为str的变量中,则可以使用以下代码。我将在其中存储值
Idea

let str=“Idea”;
函数开始使用元音(str){
设fstLetter=str.charAt(0).toLowerCase();
如果(fstLetter='a'| fstLetter=='e'| fstLetter=='i'| fstLetter=='o'| fstLetter=='u'){
返回true;
}
返回false;
}

console.log(startswith元音(str))您需要一个元音数组

['a', 'e', 'i', 'o', 'u']
要检查数组是否包含某个值,请使用
indexOf(value)!=-1

为了避免大小写的差异,将字符向下撞击
toLowerCase()

所以你得到了这样的东西

function firstIsVowel(s) {
    return ['a', 'e', 'i', 'o', 'u'].indexOf(s[0].toLowerCase()) !== -1
}

您可以使用正则表达式或简单的条件表达式。从中修改的解决方案

使用正则表达式

/^[aeiou]/i

Use ^ when you want to start your checking in this example i want to start with any 
vowels

[] Inside the bracket is any character we want to match

i The i flag means we are ignoring if its uppercase or lowercase
指的是所指出的

您可以使用类似so
/^[aeiou].*/i
的正则表达式

  • Caret^=字符串的开头
  • [aeiou]=匹配括号内的任何字符
  • *=匹配[贪婪]之后的任意数量的字符。
  • i=不区分大小写

函数测试元音(e){
const regex=new RegExp('^[aeiou].*,'i');
让inputVal=$(e.target).val();
设regexOutput=regex.test(inputVal);
//如果是真的
if(regexOutput){
$('#debug').text(“Test:True”);
}否则{
$(“#调试”).text(“测试:False”);
}
}
span{
颜色:红色;
字体大小:12px;
}

键入内容:


使用正则表达式可能是一些带有不区分大小写标志的正则表达式测试。
是一个属性,而不是带有条件的methodTest“YOUR_STRING”[0]…最佳解决方案
function beginsWithVowel(word) {
  return ['a', 'e', 'i', 'o', 'u'].indexOf(word[0].toLowerCase()) !== -1;
}
/^[aeiou]/i

Use ^ when you want to start your checking in this example i want to start with any 
vowels

[] Inside the bracket is any character we want to match

i The i flag means we are ignoring if its uppercase or lowercase