Javadocs

[Programmers] rny_string (Java) 본문

SelfStudy/알고리즘(Algorithm)

[Programmers] rny_string (Java)

Javatist 2023. 5. 11. 22:03

https://school.programmers.co.kr/learn/courses/30/lessons/181863

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

[ 문제 설명 ]

'm'과 "rn"이 모양이 비슷하게 생긴 점을 활용해 문자열에 장난을 하려고 합니다. 문자열 rny_string이 주어질 때, rny_string의 모든 'm'을 "rn"으로 바꾼 문자열을 return 하는 solution 함수를 작성해 주세요.

[ 제한사항 ]

  •  1≤ rny_string의 길이 ≤ 100
  • rny_string은 영소문자로만 이루어져 있습니다.

[입출력 예]

rny_string result
"masterpiece" "rnasterpiece"
"programmers" "prograrnrners"
"jerry" "jerry"
"burn" "burn"

[ 풀이 ]

public class String_replace {
	public static String solution(String rny_string) {
        String answer = "";
        // replace를 사용하여 m을 rn으로 변환
        answer = rny_string.replace("m", "rn");
        return answer;
    }
	public static void main(String[] args) {
		String rny_string = "programmers";
		System.out.println(solution(rny_string));
	}
}

[Java] 문자열 치환에 사용 - .replace();

1) .replace([기존문자], [바꿀문자]) - 바꾸고 싶은 문자로 문자열을 치환시켜주는 기능을 한다.

String a = "I like Java and Python and C.";
	// 문자열 반환
    System.out.println(s.replace(" and", ","));		// " and"를 ","로 변환
    
    // 결과값 : I like Java, Python, C.

2) .replaceAll([정규식], [바꿀문자]) - 바꾸고 싶은 문자로 문자열을 전부 치환시켜주는 기능.

String s = "I like Java and Python and C.";
	// 문자열 변환
    System.out.println(s.replaceAll(" and", ","));
    
    // 결과값 : I like Java, Python, C.

## .replace() VS .replaceAll() 차이점

String s = "I like Java and Python and C.";
	// 문자열 반환
    System.out.println(s.replace(".", "/"));
    System.out.println(s.replaceAll(".", "/"));
    
    // 결과값 1 : I like Java and Python and C/
    // 결과값 2 : /////////////////////////////

"." 을 "/"로 치환할 경우 replace 함수는 "."을 "/"로 정상적으로 바꾸지만,
replaceAll 함수는 "."(마침표)가 정규식으로 모든 문자를 의미하기 때문에 위의 결과값을 나타냅니다.

3) replaceFirst([기존문자], [바꿀문자]); - 바꾸고 싶은 문자열이 처음으로 해당할 때만 치환시켜주는 기능.

String s = "I like Java and Python and C.";
	// 문자열 변환
    System.out.println(s.replaceFirst(" and", ","));
    
    // 결과값 : I like Java, Python and C.
Comments