이메일 형식만 골라내기

<%@ page contentType="text/html;charset=EUC-KR" import="java.util.regex.*" %>

<%!
private String mailSelect(String strVar){
   StringBuffer objSb=new StringBuffer();
   Pattern objPtn=Pattern.compile("[\\w\\.\\-]+@([\\w\\-]+\\.)+[\\w\\-]+",Pattern.CASE_INSENSITIVE);
   Matcher objMch=objPtn.matcher(strVar);
   while(objMch.find()){
     objSb.append(objMch.group() + "<br />");
   }
   return objSb.toString();
}
%>

<%
String strVal ="나의 주소는,  12312sdsw@naver.com 입니다.";
        strVal+="두번째 주소는,  dfaewewl@yahoo.co.kr입니다.";
out.println(this.mailSelect(strVal));
%>


*. 주의사항

정규 표현 패턴을 기술하는 경우의 주의점

 Java로 정규 표현 패턴을 기술하는 경우에는 아래의 내용에 주의해 주세요.

(1) 「\」은 「\\」으로 기술한다
정규 표현 패턴 중(안)에서 특별한 의미를 가지는 「\」은, Java에 대해도 이스케이프 문자를 나타내는 특수 문자입니다. 그 때문에 「\」은 반드시 「\\」과 같이 이스케이프한 후에 사용해야 합니다.

(2) J2SE 1.3 이전에서는 사용할 수 없다
정규 표현 기능을 실현하는 java.util.regex 패키지는 J2SE 1.4부터 도입되었습니다. J2SE 1.3 이전에는 java.util.regex 패키지를 사용할 수 없기 때문에 주의해 주세요. J2SE 1.3 이전에 정규 표현 기능을 사용하고 싶은 경우에는 Jakarta ORO(http://jakarta.apache.org/oro/)등을 도입할 필요가 있습니다.

 java.util.regex 패키지로 사용할 수 있는 정규 표현 패턴에는 아래와 같은 것이 있습니다. 어디까지나 주요하긴 하지만 일부에 지나지 않습니다. 다만, 이러한 패턴을 마스터하는 것만으로도 상당히 유연한 표현이 가능해질 것입니다.

주된 정규 표현 패턴

메소드 개요
^ 행의 최초로 일치
$ 행의 말미에 일치
. 임의의 1 문자와 일치
[xyz] x, y, z의 언젠가
[^xyz] x, y, z 이외
[a-zA-Z] a~z, A~Z(모든 알파벳.대문자 소문자는 무시)
[a-z&&[^opq]] o, p, q를 제외한 모든 알파벳([a-nr-z]와 같다)
X? X와 0또는 1회 일치([0-9]?(은)는, 0또는 1 자리수의 수치와 일치)
X* X와 0회 이상 일치([A-Za-z]*는 0 자리수 이상의 알파벳과 일치)
X+ X와 1회이상 일치([0-9]+는 1 자리수 이상의 수치와 일치)
X{n} X와 n회일치([A-Za-z]{1}은 알파벳 2 문자와 일치)
X{n,} X와 n회이상 일치([a-cA-C]{3,}은 A~C(a~c) 3 문자 이상과 일치)
X{n,m} X와 n~m회 일치([xyz]{2,4}는, x, y, z 머지않아 2~4 문자와 일치)
\t 탭 문자
\n 라인 피드
\r 왕복대 리턴
\d 수치와 일치([0-9]와 동의)
\D 수치 의외로 일치([^0-9]와 동의)
\s 공백 문자와 일치([ \t\n\x0B\f\r]과 동의)
\S 공백 이외의 문자와 일치([^\s]와 동의)
\w 알파벳, 숫자, 언더 바와 일치([a-zA-Z_0-9]와 동의)
\W 알파벳, 숫자, 언더 바 의외로 일치([^\w]와 동의)


출처 : http://2005elc.elancer.co.kr/eTimes/page/eTimes_view.html?str=c2VsdW5vPTQxNjA=

'Jsp_Html' 카테고리의 다른 글

[Jsp] 한글 깨짐 현상 대처  (0) 2010.06.15
[Jsp] 다중 국가 언어 설정  (0) 2010.06.15
[Jsp] JSTL 기본 문법  (0) 2010.06.15
[Jsp] JSTL(JSP Standard Tag Library)  (0) 2010.06.15
[Jsp] JSTL강좌!!! (IBM)  (0) 2010.06.03

+ Recent posts