[programmers] 특정한 문자를 대문자로 바꾸기 - JavaScript

영소문자로 이루어진 문자열 'my_string'에서 'alp'에 해당하는 모든 글자를 대문자로 바꾼 문자열을 반환하는 문제를 풀었습니다. 처음 작성한 코드는 반복문을 사용하여 문자열을 순회하고 대문자로 변경하는 방식이었지만, 수정한 코드에서는 replaceAll() 함수를 사용하여 더 간결하게 문제를 해결했습니다.
Jan 08, 2024
[programmers] 특정한 문자를 대문자로 바꾸기 - JavaScript

문제 설명

영소문자로 이루어진 문자열 my_string과 영소문자 1글자로 이루어진 문자열 alp가 매개변수로 주어질 때, my_string에서 alp에 해당하는 모든 글자를 대문자로 바꾼 문자열을 return 하는 solution 함수를 작성해 주세요.

제한사항

  • 1 ≤ my_string의 길이 ≤ 1,000

입출력 예

my_string
alp
result
"programmers"
"p"
"Programmers"
"lowercase"
"x"
"lowercase"

입출력 예 설명

입출력 예 #1
  • 예제 1번의 my_string은 "programmers"이고 alp가 "p"이므로 my_string에 모든 p를 대문자인 P로 바꾼 문자열 "Programmers"를 return 합니다.
입출력 예 #2
  • 예제 2번의 alp는 "x"이고 my_string에 x는 없습니다. 따라서 "lowercase"를 return 합니다.

처음 작성한 코드

solution.js

function solution(my_string, alp) { let my_string_arr = my_string.split(""); for(let i=0; i<my_string_arr.length; i++){ if(my_string_arr[i]==alp){ my_string_arr[i] = my_string_arr[i].toUpperCase(); } } my_string = my_string_arr.join(""); return my_string; }

수정한 코드

solution.js

function solution(my_string, alp) { if (!my_string.includes(alp)) { return my_string; } return my_string.replaceAll(alp, alp.toUpperCase()); }
처음 작성한 코드는 보기 간결하지 않았다. 그에 따라 다른 함수를 이용하는 방법이 없을까 찾아보다가 replaceAll() 함수를 이용하는 방법을 알게 되었다.

핵심 키워드

  • replaceAll(a,b) 함수는 해당 String에서 a라는 값이 있을 경우 모든 a를 b로 바꾸는 함수다.
 

결론!

해당 문제를 풀면서 replaceAll() 함수의 활용법을 익힐 수 있었다.
 
Share article

More articles

See more posts
RSSPowered by inblog