알고리즘/문제 풀이
[프로그래머스] 숫자 문자열과 영단어 (Javascript, 2021 카카오 채용연계형 인턴십)
degurii
2021. 7. 12. 06:30
728x90
문제 링크
https://programmers.co.kr/learn/courses/30/lessons/81301
풀이
정규표현식을 이용하면 됩니다.
사실 원래는 정규표현식 없이 String.prototype.replaceAll()을 사용하려 했는데, replaceAll() 자체가 ES2021 완전 최신 문법이기도 하고, 프로그래머스의 Node.js 버전이 12 버전이라 완전 최신 문법을 지원 안 해줘서 정규 표현식의 'g' 플래그를 이용하여 해결했습니다.
정답 코드
const digit2word = ['zero','one','two','three','four','five','six','seven', 'eight','nine']
function solution(s) {
return Number(digit2word.reduce((ans, word, digit) => ans.replace(new RegExp(word, 'g'), digit), s));
}
728x90