function solution(s) {
return Number(s.replace(/zero/gi,"0")
.replace(/one/gi,"1")
.replace(/two/gi,"2")
.replace(/three/gi,"3")
.replace(/four/gi,"4")
.replace(/five/gi,"5")
.replace(/six/gi,"6")
.replace(/seven/gi,"7")
.replace(/eight/gi,"8")
.replace(/nine/gi,"9"));
}
배열에 주어진 글자들을 넣어주고, 해당 글자와 일치하는 문자를 기준으로 split을 해줍니다. 기준이 된 예를 든 zero는 사라지게 되고, 뜯어진 그 부분의 기준을 해당 값의 인덱스를 기준으로 join을 해주어 원래 있던 zero 자리엔 0이 대신하여 들어가게 됩니다.
function solution(s) {
let numbers = ["zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"];
var answer = s;
for(let i=0; i< numbers.length; i++) {
let arr = answer.split(numbers[i]);
answer = arr.join(i);
}
return Number(answer);
}