A 강조하기
문제 설명
문자열 myString이 주어집니다. myString에서 알파벳 "a"가 등장하면 전부 "A"로 변환하고,
"A"가 아닌 모든 대문자 알파벳은 소문자 알파벳으로 변환하여 return 하는 solution 함수를 완성하세요.
제한사항
- 1 ≤ myString의 길이 ≤ 20
- myString은 알파벳으로 이루어진 문자열입니다.
입출력 예
myString | result |
"abstract algebra" | "AbstrAct AlgebrA" |
"PrOgRaMmErS" | "progrAmmers" |
입출력 예 설명
입출력 예 #1
- 0번, 5번, 9번, 15번 인덱스의 "a"는 소문자이므로 전부 대문자로 고쳐줍니다.
- 다른 문자들은 전부 "a"가 아닌 소문자이므로 바꾸지 않습니다.
- 따라서 "AbstrAct AlgebrA"를 return 합니다.
입출력 예 #2
- 0번, 2번, 4번, 6번, 8번, 10번 인덱스의 문자들은 "A"가 아닌 대문자이므로 전부 소문자로 고쳐줍니다.
- 5번 인덱스의 "a"는 소문자이므로 대문자로 고쳐줍니다.
- 다른 문자들은 전부 "a"가 아닌 소문자이므로 바꾸지 않습니다.
- 따라서 "progrAmmers"를 return 합니다.
코드
class Solution {
public String solution(String myString) {
String answer = "";
return answer;
}
}
풀이
class Solution {
public String solution(String myString) {
myString = myString.toLowerCase(); // 모두 소문자로 전환
myString = myString.replace("a", "A"); // 문자 a를 A로 치환
return myString;
}
}
- string.toUpperCase() : 대상 문자열을 모두 대문자로
- string.toLowerCase() : 대상 문자열을 모두 소문자로
- string.trim() : 대상 문자열의 앞 뒤 공백 모두 제거 (사이 공백X)
- repalce(x, y) : 문자열 x를 모두 문자열 y로 치환하여 반환
- repalceAll(x, y) : 문자열 x를 모두 문자열 y로 치환하여 반환 + 정규식 적용 가능
- repalceFrist() : 처음 발견 문자열만 치환
- 정규식
- 정규 표현식
- 문자열에서 특정한 형태나 규칙을 가진 문자열을 찾기 위한 패턴
풀이 2
class Solution {
public String solution(String myString) {
return myString.toLowerCase().replace('a', 'A'); // 압축
}
}
https://school.programmers.co.kr/learn/courses/30/lessons/181874