이노베이션 캠프/3주차_알고리즘
[JS] 숫자 문자열과 영단어
hani:)
2023. 6. 19. 19:50
문제
https://school.programmers.co.kr/learn/courses/30/lessons/81301
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
문제 풀이
최종 풀이
function solution(s) {
let word = {"zero":"0", "one":"1", "two":"2",
"three":"3", "four":"4", "five":"5",
"six":"6", "seven":"7", "eight":"8",
"nine":"9"
};
let result = s;
for (key of Object.keys(word)) {
if (result.includes(key)) {
let re = new RegExp(key, "gi");
result = result.replace(re, word[key]);
//result = result.replaceAll(key, word[key]);
}
}
return Number(result);
}
해설
- 숫자를 영문으로 표현한 값을 Key로 사용하여 숫자를 저장 ("zero":0)
- for of문 사용하여 딕셔너리 모든 Key값에 접근 후 영문 숫자가 일반 숫자로 변경될 수 있도록 함
- 정규표현식 사용하여 key 값을 패턴으로 생성 후 주어진 문자열에 일치하는 값이 있는 경우 원하는 값으로 치환
- Number() 사용하여 숫자형으로 return
728x90