[Lv.0] A 강조하기

woodstock·2023년 12월 29일
0

코딩테스트

목록 보기
22/56
post-thumbnail

A 강조하기

문제설명

주어진 문자열 str에서 알파벳 "a"가 등장하면 전부 "A"로 변환하고, "A"가 아닌 모든 대문자 알파벳은 소문자 알파벳으로 변환하여 return 하는 solution 함수를 완성하는 문제이다.

문자열 메서드의 활용

풀이

풀이 1.

const solution = (str) => {
  let arr = [];
  for(let i = 0; i < str.length; i++) {
    if(str[i] === 'a') {
      arr.push('A');
    } else {
      arr.push(str[i].toLowerCase());
    }
  }
  return arr.join('');
}

풀이 2.

const solution = (str) => str.replace(/[A-Za-z]/g, c => 
    c === 'a' ? 'A': 
    c === 'A' ? 'A' : c.toLowerCase());

풀이해설

  • /[A-Za-z]/g : 문자열 내의 모든 대소문자 알파벳을 찾는다.
    여기서 g 플래그는 전체 문자열에 걸쳐 해당 패턴과 일치하는 모든 문자를 찾는다.

풀이 3.

const solution = (str) => str.toLowerCase().replaceAll('a', 'A');

풀이해설

  • 문자열 str의 모든 문자를 소문자로 변환 후 replaceAll()을 이용해 문자열에서 'a'를 찾아 모두 'A'로 교체한다.
profile
해내는 사람

0개의 댓글