머쓱이는 태어난 지 6개월 된 조카를 돌보고 있습니다. 조카는 아직 "aya", "ye", "woo", "ma" 네 가지 발음을 최대 한 번씩 사용해 조합한(이어 붙인) 발음밖에 하지 못합니다. 문자열 배열 babbling이 매개변수로 주어질 때, 머쓱이의 조카가 발음할 수 있는 단어의 개수를 return하도록 solution 함수를 완성해주세요.
https://school.programmers.co.kr/learn/courses/30/lessons/120956?language=java
class Solution {
public int solution(String[] babbling) {
String[] data = {"aya", "ye", "woo", "ma"};
int count = 0;
for(String d : data){
for(int i = 0; i < babbling.length; i++){
babbling[i] = babbling[i].replace(d, " ");
}
}
for(int i = 0; i < babbling.length; i++){
if(!babbling[i].matches(".*[a-z].*")) count++;
}
return count;
}
}
- 받은 배열에 머쓱이가 할 수 있는 말을 하나씩 replace한다.
- replace할때 대체 문자를 띄어쓰기를 해줘야 빠진 문자열에서 앞, 뒤 문자가 붙지 않는다.
- 할 수 있는 말을 다 했다면 배열에는 문자가 없어야 하므로 정규식을 사용해서 문자가 없는 갯수만 리턴한다.