본문 바로가기
ComputerScience/알고리즘, 프로그래머스

[Lv.0] 영어가 싫어요(.replaceAll())

by VictorMeredith 2023. 1. 30.

1. 문제

2. 풀이

function solution(numbers) {

    let numberEn = ['zero', 'one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine']
    let sum = numbers
    
    for(let i =0; i<numberEn.length; i++){ //0~9 까지 순회

        sum = sum.replaceAll(numberEn[i],i) //numberEn의 요소를 순회하는 변수 i로 교체해준다.
    }
    
    return parseInt(sum); //문자열을 정수로 바꾸어준다.
}

3. 알아야할 사항

 1) string.replaceAll(치환대상, 치환할문자) : 해당 치환대상 문자를 모두 바꾼다.

   - 비교적 최신 문법으로 일부 브라우저에서는 작동하지 않을 수 있다.

   - 정규식을 이용해 replace함수를 replaceAll처럼 동작하게 만드는 방법이 있다. 

  2) parseInt(string) : 문자열을 정수로 바꾸어준다. 

댓글