반응형
코딩테스트 숨어있는 숫자의 덧셈 (1)
문제 설명
출력 예시
문자열 안에 문자와 자연수가 막 섞여있습니다.
이 문자열을 뺀 자연수들을 더하여 출력하는 문제입니다~
바로 풀이 가보겠습니닷!
let my_string = "aAb1B2cC34oOp";
var answer = 0;
const spl = my_string.split('');
spl.forEach(e=>{
})
//10
저 문자열 속에 있는 자연수들인 1,2,3,4 를 더하여 10을 출력해야 하는 상황입니다.
우선 기본적으로 제 방식대로 하기 위해 스플릿을 사용하여 요소 하나하나를 파해쳐 보겠습니다.
forEach문을 사용하여 search() 메서드를 사용하여 정규식으로 숫자만 찾아 뽑아낼 생각입니다.
forEach문 안에 내용을 채워보겠습니다~
let my_string = "aAb1B2cC34oOp";
var answer = 0;
const spl = my_string.split('');
spl.forEach(e=>{
let search = e.search(/[0-9]/); //search 변수에 정규식을 이용하여 숫자만 찾기
if(search != -1){ //정규식에서 숫자를 못찾았으면 -1을 반환합니다.
answer += //parseInt(e); //parseInt를 이용하여 문자열을 숫자열로 바꿔 더해주기
}
})
//10
search() 메서드는 false일시 -1을 반환합니다.
그걸 이용하여 자연수만 찾아 parseInt() 메서드를 이용하여 문자열을 숫자열로 바꿔 answer에 정수를 더해줬습니다.
그러므로 답은 10이 출력됩니다!