[JAVA] 자바 특정 문자열 포함 확인 및 찾기(contains/indexof/matches)

자바 특정 문자열 포함 여부 확인 및 특정 문자 찾기

 

프로그래밍 개발을 하다보면 문자열에서 특정 문자가 포함되어있는지 확인이 필요할 경우가 생깁니다.

문자열이 포함되어있는지 없는지에 따라 조건을 다르게 주기도 하기도 합니다.

 

1. contains()

문자열에 특정문자를 포함하고 있는지 확인하는 함수입니다.

특징으로는 대소문자를 구분합니다.

package joon;

public class codeTest {

    public static void main(String[] args) throws Exception{

        String str = "사과(apple) 가격은 개당 1,000원 입니다." ;

        // contains 사용
        if(str.contains("사과")) {
            System.out.println("contain - 포함");
        }else {
            System.out.println("contain - 미포함");
        }
        
        System.out.println(str.contains("APPLE") ); // false
        System.out.println( str.contains("apple") );  // true

    }
}

 

2. indexOf()

문자열에 특정문자의 위치를 반환합니다.

특정 문자나 문자열을 앞에서 부터 찾기 시작합니다.

찾는도중 특정문자를 포함하고 있으면 그 위치의 인덱스를 반환합니다.

특정문자를 찾지 못하면 -1를 반환합니다.

 

package joon;

public class codeTest {

    public static void main(String[] args) throws Exception{

        String str = "사과(apple) 가격은 개당 1,000원 입니다." ;

        // indexOf 사용
        if(str.indexOf("가격") > -1) {
            System.out.println("indexOf 포함");
        }else {
            System.out.println("indexOf 미포함");
        }

    }
}



3. mathces() 

정규식을 이용하여 특정문자를 검색합니다.

package joon;

public class codeTest {

    public static void main(String[] args) throws Exception{

        String str = "사과(apple) 가격은 개당 1,000원 입니다." ;
        
        // matches 문자열 정규식 찾기
        if(str.matches(".*사과.*")) {
            System.out.println("matches 포함");
        }else {
            System.out.println("matches 미포함");
        }

        // matches 문자열 정규식 숫자 찾기
        if(str.matches(".*[0-9].*")) {
            System.out.println("matches 숫자 포함");
        }else {
            System.out.println("matches 숫자 미포함");
        }

    }
}

 

자주쓰는 정규식 패턴입니다.

숫자만 : ^[0-9]*$
영문만 : ^[a-zA-Z]*$
영문만, 띄어쓰기가능 : /^[a-zA-Z\s]+$/
한글만 : ^[가-힣]*$
한글만,띄어쓰기가능 :  /^[가-힣\s]+$/
한글 & 영문만 : /^[가-힣a-zA-Z]+$/;
영문 & 숫자만 : ^[a-zA-Z0-9]*$
E-Mail : ^[a-zA-Z0-9]+@[a-zA-Z0-9]+$
휴대폰 : ^01(?:0|1|[6-9]) - (?:\d{3}|\d{4}) - \d{4}$
일반전화 : ^\d{2,3} - \d{3,4} - \d{4}$
URL : /^(file|gopher|news|nntp|telnet|https?|ftps?|sftp):\/\/([a-z0-9-]+\.)+[a-z0-9]{2,4}.*$/
주민등록번호 : \d{6} \- [1-4]\d{6}
IP 주소 : ([0-9]{1,3}) \. ([0-9]{1,3}) \. ([0-9]{1,3}) \. ([0-9]{1,3})

댓글

Designed by JB FACTORY