Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/458.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我想做字符串验证 我们需要考虑下面的字符串作为用例,首先我要拆分 按“,”然后按“@”_Javascript - Fatal编程技术网

Javascript 我想做字符串验证 我们需要考虑下面的字符串作为用例,首先我要拆分 按“,”然后按“@”

Javascript 我想做字符串验证 我们需要考虑下面的字符串作为用例,首先我要拆分 按“,”然后按“@”,javascript,Javascript,如果所有域名都是相同的(要么全部是gmail,要么全部是yahoo),则按@拆分后的域名有效 否则无效 请帮我分两部分 String input1 = example@gmail.com , example1@gmail.com; String input2 = example@yahoo.com , example1@gmail.com; String input 1 == valid. String input 2 == Invalid. 下面是一个简单的示例,您可以

如果所有域名都是相同的(要么全部是gmail,要么全部是yahoo),则按@拆分后的域名有效 否则无效

请帮我分两部分

String input1 = example@gmail.com , example1@gmail.com; 
String input2 = example@yahoo.com , example1@gmail.com;


    String input 1 == valid.
    String input 2 == Invalid.

下面是一个简单的示例,您可以使用[0]和[1]从拆分中访问数组


var input = 'example@gmail.com , example1@ymail.com, example1@yahoo.com';
input.split(',').forEach(email => {
  const domain = email.split('@')[1].trim();
  if (domain === 'gmail.com' || domain === 'yahoo.com') {
    console.log("Email address " + email + " is valid.");
  } else {
    console.log("Email address " + email + " is not valid.");
  }
})
使用函数

isValid = (emails)=>{
    let list = emails.split(','), isValid = true

    list.forEach((email)=>{
        if(!email.includes('@gmail.com')){

          isValid = false
        }
    })

    return isValid
}

isValid(' example@gmail.com , example1@hotmail.com;')
被,, 然后检查每封电子邮件的内容 您可以添加一个secound参数来检查电子邮件类型并使其更通用

isValid = (emails, validEmail)=>{
    let list = emails.split(','), isValid = true

    list.forEach((email)=>{
        if(!email.includes(validEmail)){

          isValid = false
        }
    })

    return isValid
}

isValid(' example@gmail.com , example1@hotmail.com', '@gmail.com')

您可以提取域,然后将它们添加到
集合
,并通过检查
集合
的大小来查看它们是否唯一

另外一个额外的功能是,无论字符串中有多少封电子邮件,这都可以正常工作

const input1='1'example@gmail.com , example1@gmail.com';
常量输入2=example@yahoo.com , example1@gmail.com';
功能有效输入(输入){
const domains=input.split(',').map(email=>email.trim().split('@')[1])
返回新集合(域)。大小===1;
}
log('input1有效吗?',validInput(input1));

log('input2有效吗?',validInput(input2))您是否尝试过使用?请告诉我们如何。我可以第一次与…分开,然后与…分开。。如何使用@mohammedshail拆分同一字符串您应该查看
split()
返回的变量类型。对字符串调用
split
函数并返回字符串数组。因此,对于您的
input1
,split将返回
[”example@gmail.com "," example1@gmail.com“]
。要进行另一次拆分,需要将其应用于数组中的每个项。我建议你看看这个。