Java/Java

[Java] 자바 특정 문자열 포함 여부 확인 및 위치 찾기(contains, indexOf)

mingmongs 2025. 3. 14. 10:16

title

자바 문자열 함수 중, 주어진 문자열에 특정 문자열이 포함되어있는지 확인이 필요한 경우가 있다.
이 경우 contains() 함수와 indexOf() 함수를 활용할 수가 있다.
위 두 개의 함수에 대하여 알아보자.

 

1) contains?

: 대상 문자열에 특정 문자열이 포함되어 있는지 확인하는 함수로, 대/소문자를 구분한다.
문자열이 있으면 true, 없으면 false를 반환한다.

  • 문법: String.contains(String substring)

 

2) contains 사용법(예시)

String str1 = "Apple Banana";
String str2 = "Apple";
String str3 = "Ban";

System.out.println("str1.contains(\"Banana\") = " + str1.contains("Banana"));
System.out.println("str2.contains(\"Apple\") = " + str2.contains("Apple"));
System.out.println("str3.contains(\"Banana\") = " + str3.contains("Banana"));

 

결과값

result1

 

3) indexOf?

: 대상 문자열에 특정 문자열이 포함되어 있는지 앞에서부터 찾기 시작하여, 발견 위치의 인덱스(index)를 반환한다.
특정 문자열을 찾지 못하면 -1을 반환한다.

  • indexOf(String str)
  • indexOf(int ch)
  • indexOf(int ch, int fromIndex)
  • indexOf(String str, int fromIndex)

 

4) indexOf 사용법(예시)

String str1 = "Apple Banana";
String str2 = "Apple";
String str3 = "Ban";

System.out.println("str1.indexOf(\"Banana\") = " + str1.indexOf("Banana"));
System.out.println("str2.indexOf(\"Apple\") = " + str2.indexOf("Apple"));
System.out.println("str3.indexOf(\"Banana\") = " + str3.indexOf("Banana"));

 

결과값

result2

 

 

[reference]
https://mine-it-record.tistory.com/124
https://lnsideout.tistory.com/entry/JAVA-%EC%9E%90%EB%B0%94-%ED%8A%B9%EC%A0%95-%EB%AC%B8%EC%9E%90%EC%97%B4-%ED%8F%AC%ED%95%A8-%ED%99%95%EC%9D%B8-%EB%B0%8F-%EC%B0%BE%EA%B8%B0containsindexofmatches