원하는 문자열 찾기

nacSeo (낙서)·2024년 2월 20일
0

프로그래머스

목록 보기
89/169

문제 설명

알파벳으로 이루어진 문자열 myString과 pat이 주어집니다. myString의 연속된 부분 문자열 중 pat이 존재하면 1을 그렇지 않으면 0을 return 하는 solution 함수를 완성해 주세요.

단, 알파벳 대문자와 소문자는 구분하지 않습니다.

제한사항

1 ≤ myString의 길이 ≤ 100,000
1 ≤ pat의 길이 ≤ 300
myString과 pat은 모두 알파벳으로 이루어진 문자열입니다.

나의 코드

class Solution {
    public int solution(String myString, String pat) {
        return myString.toUpperCase().contains(pat.toUpperCase())?1:0;
    }
}

다른 사람 코드

class Solution {
    public int solution(String myString, String pat) {
        int answer = 0;
        String str = myString.toLowerCase();
        String str2 = pat.toLowerCase();

        if (str.indexOf(str2) != -1) {
            return 1;
        }
        return 0;
    }
}

indexOf() 메소드 사용

느낀 점

특정 문자열이 어느 문자열 안에 포함되는지 확인하는 메소드는 여러 개가 존재한다. 나는 그 중에서 contains() 메소드를 활용했고, 다른 사람 코드 중에서는 indexOf() 메소드를 활용한 코드도 있었다. 막상 문제를 만났을 때 잘 기억이 안났는데 이번 기회로 잘 정리해두고 가야겠다.

  • contains()
    - 특정 문자열을 인수로 전달하여 존재하면 true, 그렇지 않으면 false가 반환

  • indexOf()
    - 특정 문자열이 존재하면 해당 문자열의 첫 번째 인덱스가 반환되고 그렇지 않으면 -1이 반환

profile
백엔드 개발자 김창하입니다 🙇‍♂️

0개의 댓글