프로그래머스 옹알이1

2023. 1. 27. 19:18알고리즘/문자열

1/27

 

프로그래머스 처음 풀어보는데 Main 함수가 없어서 당황스럽다.

테스트하기  까다로운듯하다.

 

뭐 익숙해지면 괜찮아지겠지,,,,,

 

오랜만에 푼 문자열 문제

 

class Solution {
    public  int solution(String[] babbling) {
        int answer = 0;
        String[] strArr = {"aya", "ye", "woo", "ma"};

        for(int i=0; i<babbling.length; i++){
            String str = babbling[i];
            for(int j=0; j<strArr.length; j++){
                String good = strArr[j];
                str = str.replaceFirst(good, "?");
            }
            boolean isAnswer = true;

            for(int j=0; j<str.length(); j++){
                if(str.charAt(j)!='?'){
                    isAnswer = false;
                    break;
                }
            }
            if(isAnswer)
                answer++;
        }
        return answer;
    }
}

 

==========================================================================================

 

* replace

바꾸고 싶은 모든 문자를 지정 문자로 치환

String a = "무궁화 삼천리 화려강산 대한사람 대한으로 길이 보전하세 ";
//replace([기존문자],[바꿀문자])
    a= a.replace("대한", "민국");  
System.out.println(a);

//결과값 : 무궁화 삼천리 화려강산 민국사람 민국으로 길이 보전하세

 

* replaceFirst

replace와 동일하나 처음 발견한 문자만 치환

String a = "무궁화 삼천리 화려강산 대한사람 대한으로 길이 보전하세 ";
//replaceFirst([기존문자],[바꿀문자])
    a= a.replaceFirst("대한", "민국");
System.out.println(a);

//결과값 : 무궁화 삼천리 화려강산 민국사람 대한으로 길이 보전하세

 

* replaceAll

replace와 동일하나 특수문자 치환이 어려움 -> replace 쓰자

String a = "무궁화 삼천리 화려강산 대한사람 대한으로 길이 보전하세 ";
//replaceAll([정규식],[바꿀문자])
    a= a.replaceAll("대한", "민국");
System.out.println(a);

//결과값 : 무궁화 삼천리 화려강산 민국사람 민국으로 길이 보전하세