🌠 문제

λ¬Έμžμ—΄ my_string이 λ§€κ°œλ³€μˆ˜λ‘œ μ£Όμ–΄μ§‘λ‹ˆλ‹€. my_string은 μ†Œλ¬Έμž, λŒ€λ¬Έμž, μžμ—°μˆ˜λ‘œλ§Œ κ΅¬μ„±λ˜μ–΄μžˆμŠ΅λ‹ˆλ‹€. my_stringμ•ˆμ˜ μžμ—°μˆ˜λ“€μ˜ ν•©μ„ returnν•˜λ„λ‘ solution ν•¨μˆ˜λ₯Ό μ™„μ„±ν•΄μ£Όμ„Έμš”.

🌠 μ œν•œμ‚¬ν•­

  • 1 ≤ my_string의 길이 ≤ 1,000
  • 1 ≤ my_string μ•ˆμ˜ μžμ—°μˆ˜ ≤ 1000
  • μ—°μ†λœ μˆ˜λŠ” ν•˜λ‚˜μ˜ 숫자둜 κ°„μ£Όν•©λ‹ˆλ‹€.
  • 000123κ³Ό 같이 0이 μ„ ν–‰ν•˜λŠ” κ²½μš°λŠ” μ—†μŠ΅λ‹ˆλ‹€.
  • λ¬Έμžμ—΄μ— μžμ—°μˆ˜κ°€ μ—†λŠ” κ²½μš° 0을 return ν•΄μ£Όμ„Έμš”.

🌠 μž…μΆœλ ₯ 예

my_string result
"aAb1B2cC34oOp" 37
"1a2b3c4d123Z" 133

🌠 μž…μΆœλ ₯ 예 μ„€λͺ…

μž…μΆœλ ₯ 예 #1

  • "aAb1B2cC34oOp"μ•ˆμ˜ μžμ—°μˆ˜λŠ” 1, 2, 34 μž…λ‹ˆλ‹€. λ”°λΌμ„œ 1 + 2 + 34 = 37 을 returnν•©λ‹ˆλ‹€.

μž…μΆœλ ₯ μ˜ˆ #2

  • "1a2b3c4d123Z"μ•ˆμ˜ μžμ—°μˆ˜λŠ” 1, 2, 3, 4, 123 μž…λ‹ˆλ‹€. λ”°λΌμ„œ 1 + 2 + 3 + 4 + 123 = 133 을 returnν•©λ‹ˆλ‹€.

🧞 풀이

function solution(my_string) {
    let answer = 0;
    let regex = /[^0-9]/g;
    let array = my_string.replace(regex, " ").split(" ").filter(e => e != "");
    while (array.length != 0) {
        let tmp = array.shift();
        answer += Number(tmp);
    }
    return answer;
}

+ Recent posts