본문 바로가기
카테고리 없음

문자열에 특정 문자 포함 / 검색하는 다양한 방법(indexOf, contains, matches)

by sftt 2023. 12. 9.

문자열에 특정 문자 포함/검색하기

문자열에 특정 문자나 단어가 포함되어 있는지 확인하고 검색하는 일은 프로그래밍에서 매우 중요한 작업입니다. 이 포스팅에서는 자바를 기준으로 문자열에 특정 문자를 포함하는 다양한 방법을 알아보겠습니다.

indexOf 메서드

indexOf 메서드는 문자열에서 특정 문자 또는 문자열의 첫 번째 위치를 찾아주는 메서드입니다. 만약 문자 또는 문자열이 포함되지 않았다면 -1을 반환합니다.

String str = "Hello, World!";

int index = str.indexOf("o");
System.out.println(index);  // 출력: 4

index = str.indexOf("W");
System.out.println(index);  // 출력: 7

index = str.indexOf("Java");
System.out.println(index);  // 출력: -1

contains 메서드

contains 메서드는 문자열이 특정 문자 또는 문자열을 포함하는지 여부를 확인하는 메서드입니다. 포함되면 true, 포함되지 않으면 false를 반환합니다.

String str = "Hello, World!";

boolean contains = str.contains("o");
System.out.println(contains);  // 출력: true

contains = str.contains("W");
System.out.println(contains);  // 출력: true

contains = str.contains("Java");
System.out.println(contains);  // 출력: false

matches 메서드

matches 메서드는 정규표현식을 사용하여 문자열이 특정 패턴과 일치하는지 여부를 확인하는 메서드입니다. 패턴에 일치하면 true, 일치하지 않으면 false를 반환합니다.

String str = "Hello, World!";

boolean matches = str.matches(".*o.*");
System.out.println(matches);  // 출력: true

matches = str.matches(".*W.*");
System.out.println(matches);  // 출력: true

matches = str.matches(".*Java.*");
System.out.println(matches);  // 출력: false

이렇게 indexOf, contains, matches 메서드를 사용하여 문자열에서 특정 문자를 포함하고 있는지 검색할 수 있습니다. 이들 메서드 중에서 선택은 상황에 맞게 하시면 됩니다.

댓글