스킬트리
문제
내가 푼 답
function solution(skill, skill_trees) { let arr = skill.split(''); let str, count = 0; for(let i = 0; i < skill_trees.length ; i++) { str = skill_trees[i].split('').filter(i => arr.includes(i)).join(''); if(str === skill.substring(0,str.length)) { count++; } } return count; }처음에는
new RegExp를 쓰려고 용을 썼는데, 구현을 못해서 결국 그냥filter로 했다. 다른 분들의 풀이를 보니 정규식으로 구현한 풀이가 있었다. 내가 구현을 못했을 뿐…ㅋㅋ 정규식을 이용한 풀이는 다음과 같다. ES6 문법을 사용하면 된다.function solution(skill, skill_trees) { var answer = 0; var regex = new RegExp(`[^${skill}]`,'g'); return skill_trees .map(x => x.replace(regex, '')) .filter(x => { return skill.indexOf(x) === 0 || x ===""; }) .length }
