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 를 의미 합니다.