replaceAll등을 사용할때 자바 정규식을 이용해서 치환하게 되면

좀더 짦은 소스로 많은 내용을 치환 할 수 있습니다.

아래 내용은 간단하게 자바 정규식을 정리한 내용 입니다.


.

하나의 문자를 의미 합니다.

ex> ab. => abc 혹은 abd 등을 모두 의미 합니다.

String str = "";

str = str.replaceAll("ab.", "");

str의 값에 따라서 출력되는 데이터는

abc => ""

abd => ""

abddd => "dd"


?

해당 패턴의 앞에 문자가(1개)있거나 없거나 를 의미 합니다.

ex> (?)c => abc 혹은 bc 등을 모두 의미 합니다.

String str = "";

str = str.replaceAll("(?)c", "");

str의 값에 따라서 출력되는 데이터는

abc => "ab"

bc => "b"

c => ""


*

하나 이상의 문자를 의미하게 됩니다.

ex> ab* => aaa 혹은 ad 등을 모두 의미 합니다.

String str = "";

str = str.replaceAll("ab*", "");

str의 값에 따라서 출력되는 데이터는

abc => "c"

ab => ""

abcdeded => "cdeded"


^

문자열의 시작을 의미합니다.

ex> ^a => a로 시작되는 문자를 모두 의미 합니다.

String str = "";

str = str.replaceAll("^a", "");

acccccc => "cccccc"

ccccacccc => "ccccacccc"

ccccca => "ccccca"


+

앞의 문자가 하나이상의 반복을 의미합니다.

ex> ab+ => abbbb 를 의미 하게 됩니다.

String str = "";

str = str.replaceAll("ab*", "");

str의 값에 따라서 출력되는 데이터는

abbbbbbbb => ""

abbbbcccc => "cccc"

abccbbbb => "ccbbbb"


[^]
괄호안의 형식을 제외한다는 의미입니다.
ex> [^a]bc => a를 제외한 bc, bcd 를 의미 하게 됩니다.

$
문자열의 끝을 의미합니다.
ex> ab& => b로 끝나는 문자를 의미 하게 됩니다.

[ ]
괄호안의 형식이 일치하는 경우를 나타냅니다.
ex> [ab] => a, b, ab 를 의미 하게 됩니다.
String str = "";
str = str.replaceAll("[ab]", "");
str의 값에 따라서 출력되는 데이터는
aaaaaaaa => ""
bbbbbb => ""
abababab => ""
cccabccc => "cccccc"
aaabbbabab => ""

( )
()안의 내용을 하나의 묶음으로 사용합니다.
ex> (ab) => ab 를 의미 합니다.
String str = "";
str = str.replaceAll("(ab)", "");
str의 값에 따라서 출력되는 데이터는
aaaaaaa => "aaaaaaa"
bbbbbb => "bbbbbb"
abababab => ""
cccabccc => "cccccc"
aaabbbabab => "aabb"

{ }
안의 숫자에 따른 반복개수를 의미합니다.
ex> ab{2} => abab 를 의미 합니다.

|
or연산자와 동일합니다.
ex> a|b|c 는 a,b,c,abc 를 의미 합니다.


반응형

'JAVA' 카테고리의 다른 글

Pattern.matches  (0) 2015.03.24
정규식 간단 예제  (0) 2015.03.24
script 태그 replaceAll  (0) 2015.03.24
javadoc생성시 인코딩 오류 발생  (0) 2015.03.11
youtube api연동 샘플 소스  (0) 2015.03.09
Posted by 질주하는구
,