Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

179
Views
How can I filter specific emails from an array?

I'm trying to get from an array of multiple emails string this effect if there is more than one email that ends with the same domain name of the email do not show me that filter for example:

const db = ['example@example.com', 'example2@example.com'];

const check = ['example3@example.com', 'another@anotherdomain.com'];

function findNotSimilar(check, db) {

const arr = check.filter((item) => db.indexOf(item) === -1);
return arr;

}

this returns ['example3@example.com', 'another@anotherdomain.com'], but I would like to return just ['another@anotherdomain.com'] array because the email ending with the same domain name

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Here is the solution. But regarding the domains.. you have to consider domains with 2 parts like '.co.uk' in comparison with simple '.com'.

function Test() {
    const db = ['example@example.com', 'example2@example.com'];
    const check = ['example3@example.eu', 'another@anotherdomain.com'];
    const dbFiltered = db.map(x => x.split('@')[1].split('.').slice(0, -1).join('.')).filter((x, y, z) => z.indexOf(x) === y);
    const arr = check.filter((item) => dbFiltered.map(x => item.indexOf(x) === -1).every(x => x === true));
    return arr;
}
about 4 years ago · Juan Pablo Isaza Report

0

Working Demo :

const db = ['example@example.com', 'example2@example.com'];
const check = ['example3@example.com', 'another@anotherdomain.com'];

// Split the array elements with domain name and creating a new array.
const formatDb = db.map((item) => item.split('@')[1]);

// Filtered out the element with different domain name.
const arr = check.filter((item) => formatDb.indexOf(item.split('@')[1]) === -1);

console.log(arr);

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!