1장 문제 설명

네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다.

참고로 각 숫자에 대응되는 영단어는 다음 표와 같습니다.

영단어 zero one two three four five six seven eight nine
숫자 0 1 2 3 4 5 6 7 8 9

문자열 s가 매개변수로 주어집니다. s가 의미하는 원래 숫자를 return 하도록 solution 함수를 완성해주세요.

function solution(s) {
    var answer = 0;
    return answer;
}

2장 문제 풀이

1단계 : answer에 받아온 매개변수 s를 저장합니다.

function solution(s) {
    var answer = s;
    return answer;
  }

2단계 : 영단어 마다 각각의 숫자로 변경합니다.

function solution(s) {
    var answer = s
      .replace(/zero/g, 0)
      .replace(/one/g, 1)
      .replace(/two/g, 2)
      .replace(/three/g, 3)
      .replace(/four/g, 4)
      .replace(/five/g, 5)
      .replace(/six/g, 6)
      .replace(/seven/g, 7)
      .replace(/eight/g, 8)
      .replace(/nine/g, 9);
    return answer;
  }

3단계 : 문자열을 숫자열으로 변경합니다.

function solution(s) {
    var answer = s
      .replace(/zero/g, 0)
      .replace(/one/g, 1)
      .replace(/two/g, 2)
      .replace(/three/g, 3)
      .replace(/four/g, 4)
      .replace(/five/g, 5)
      .replace(/six/g, 6)
      .replace(/seven/g, 7)
      .replace(/eight/g, 8)
      .replace(/nine/g, 9);
    return Number(answer);
  }

3장 참고

코딩테스트 연습 - 숫자 문자열과 영단어

MDN Web Docs

.NET 정규식