프로그래머스(Java)/Level 0
[프로그래머스] 특정 문자열로 끝나는 가장 긴 부분 문자열 찾기
shs00925
2024. 8. 13. 15:32
힌트:
이 문제는 문자열의 특정 패턴을 찾아 그 패턴이 마지막으로 나타나는 위치까지의 부분 문자열을 추출하는 문제입니다. 이를 해결하기 위해 세 가지 중요한 메소드를 사용합니다:
- substring() 메소드:
- 설명: 이 메소드는 문자열의 지정된 시작 인덱스에서 끝까지 또는 지정된 끝 인덱스 전까지의 부분 문자열을 반환합니다. 예를 들어, "hello".substring(1, 4)는 "ell"을 반환합니다.
- 사용: 이 문제에서는 마지막으로 나타난 패턴까지의 문자열을 추출하는 데 사용됩니다.
- lastIndexOf() 메소드:
- 설명: 이 메소드는 문자열에서 지정된 패턴이 마지막으로 나타나는 위치의 인덱스를 반환합니다. 만약 해당 패턴이 문자열에 없으면 -1을 반환합니다. 예를 들어, "hello world".lastIndexOf("o")는 7을 반환합니다.
- 사용: 이 문제에서는 패턴이 문자열에서 마지막으로 나타나는 위치를 찾는 데 사용됩니다.
- length() 메소드:
- 설명: 이 메소드는 문자열의 길이(문자 수)를 반환합니다. 예를 들어, "hello".length()는 5를 반환합니다.
- 사용: 이 문제에서는 패턴의 길이를 더하여 부분 문자열의 끝 인덱스를 계산하는 데 사용됩니다.
정답은 더보기 클릭
더보기
class Solution {
public String solution(String myString, String pat) {
return myString.substring(0, myString.lastIndexOf(pat) + pat.length());
}
}