자바에서 정규표현식을 사용할 수 있는 매서드를 설명합니다. 

// ex.1)
import java.util.regex.Matcher;
import java.util.regex.Pattern;
 
public class Ex01 {
 
    public static void main(String[] args) {
         
        String regex = "[0-9a-zA-Z]+";
        Matcher reg = Pattern.compile(regex).matcher("54654dsffs");
         
 
        System.out.println(reg);
         
        if(reg.find() == true) {
            System.out.println("올바른 문자열입니다.");
        }else{
            System.out.println("올바른 문자열이 아닙니다.");
        }
    }
}


아래는 결과 화면입니다.

 

// ex.2)
import java.util.regex.Matcher;
import java.util.regex.Pattern;
 
public class Ex01 {
 
    public static void main(String[] args) {
         
        String regex = "[0-9a-zA-Z]+";
        Pattern reg = Pattern.compile(regex);
        Matcher mt = reg.matcher("54654dsffs");
         
         
        System.out.println(mt);
         
        if(mt.find() == true) {
            System.out.println("올바른 문자열입니다.");
        }else{
            System.out.println("올바른 문자열이 아닙니다.");
        }
    }
}


다음은 replaceAll() 을 이용해 패턴에 매치되는 모든 문자열을 치환해 보겠습니다. 

// ex.3)
public class Ex01{
    public static void main(String[] args) {
        String str = "korean Members korean You's man";
         
        // korean 을 japan 으로 치환합니다.
        Matcher pt = Pattern.compile("korean").matcher(str);
        str = pt.replaceAll("japan");
 
        System.out.println(str);
        // 결과: japan Members japan You's man
    }
}


다음은 정규표현식을 이용해 정상적인 URL인지 체크해 보겠습니다. 

// ex.4)
import java.util.regex.Matcher;
import java.util.regex.Pattern;
 
public class IPtoURL {
         
    public static boolean toURL(String str){
        String reg_pattern = "^(https?):\\/\\/([^:\\/\\s]+)(:([^\\/]*))?((\\/[^\\s/\\/]+)*)?\\/
                     ?([^#\\s\\?]*)(\\?([^#\\s]*))?(#(\\w*))?$";
 
        // 패턴을 만듭니다.        
        Pattern reg = Pattern.compile(reg_pattern);
        // 대상 문자열을 지정합니다.
        Matcher reg_str = reg.matcher(str);
 
        // find() 는 성공하면 true, 실패하면 false 를 반환합니다.
        // ex.) boolean s = reg_str.find()
        if(reg_str.find() == true)
            return true;
         
        return false;
    }
     
    public static void main(String[] args) {
        boolean tourl = toURL("http://naver.com/home/to/gourl/123");
         
        if(tourl) {
            System.out.println("정상적인 URL 입니다.");
        }
        else {
            System.out.println("올바르지 않은 URL 입니다.");
        }
    }
}


아래는 실행 결과 입니다.


0 댓글