YS's develop story
자주 사용하는 정규 표현식(Regex) 정리 본문
^
시작을 의미함 ex) ^[.] ->.로 시작한다면..
String string = "...!@BaT#*..y.abcdefghijklm";
string = string.replaceAll("^[.]", "X");
System.out.println(string); // -> X..!@BaT#*..y.abcdefghijklm
^a -> a로 시작한다면..
String string1 = "apple";
string1 = string1.replaceAll("^a","X");
System.out.println(string1); // -> Xpple;
주의할 점은 괄호 [] 안에 ^가 있다면 부정의 의미로 사용됩니다.
[^.] ->. 이 아니라면..
String string = "...!@BaT#*..y.abcdefghijklm";
string = string.replaceAll("[^.]", "X");
System.out.println(string); // -> ...XXXXXXX..X.XXXXXXXXXXXXX
$
$앞의 문자열로 끝나는지를 의미함 ex) m$ -> m로 끝난다면..
String string = "...!@BaT#*..y.abcdefghijklm";
string = string.replaceAll("m$", "X");
System.out.println(string); // -> ...!@BaT#*..y.abcdefghijklX
[]
괄호 안에 문자가 있는지 확인
괄호 안에 ^가 쓰이면 제외를 뜻함 ex) [^a-zA-Z] -> a-z까지의 소문자, 대문자 알파벳을 제외한..
String string = "...!@BaT#*..y.abcdefghijklm";
string = string.replaceAll("[^a-zA-Z]", "X");
System.out.println(string); // -> XXXXXBaTXXXXyXabcdefghijklm
String string1 = "...!@BaT#*..y.abcdefghijklm";
string1 = string.replaceAll("[^a-z]", "X");
System.out.println(string1); // -> XXXXXXaXXXXXyXabcdefghijklm
|
or
ex) ^[.]|m$ ->.로 시작하거나 m으로 끝나거나
ex) ^[a-z]|[a-z]$ -> a-z로 시작하거나 a-z로 끝나거나
String string = "...!@BaT#*..y.abcdefghijklm";
string = string.replaceAll("^[.]|m$", "X");
System.out.println(string); // -> X..!@BaT#*..y.abcdefghijklX
String string1 = "...!@BaT#*..y.abcdefghijklm";
string1 = string1.replaceAll("^[a-z]|[a-z]$", "X");
System.out.println(string1); // -> ...!@BaT#*..y.abcdefghijklX
{}
{n} -> n개 있다면.. ex) m {2} -> m이 딱 두 개 있다면
String string1 = "...!@BaT#*..y.abcdefghijklmm";
string1 = string1.replaceAll("m{2}", "X");
System.out.println(string1); //...!@BaT#*..y.abcdefghijklX
{n, m} -> n개 이상 m개 이하 있다면.. ex) [.]{1,2} ->. 이 1개 이상, 2개 이하이면
String string = "...!@BaT#*..y.abcdefghijklm";
string = string.replaceAll("[.]{1,2}", "X");
System.out.println(string); //XX!@BaT#*XyXabcdefghijklm
{n,} -> n개 이상 있다면.. ex) [.]{2,} ->. 이 두 개 이상 있다면
String string = "...!@BaT#*..y.abcdefghijklm";
string = string.replaceAll("[.]{2,}", "X");
System.out.println(string); //X!@BaT#*Xy.abcdefghijklm
코테에서 정규표현식을 사용하면 매우 쉽게 풀 수 있는 문제들이 종종 나오는 것 같다
https://school.programmers.co.kr/learn/courses/30/lessons/72410
'Java' 카테고리의 다른 글
JSP, Tomcat활용하여 MySQL 데이터 가져오기 (0) | 2022.11.09 |
---|---|
JAVA error) The method must override or implement a supertype method (1) | 2020.11.06 |
Java ) java 상속관련 .. (0) | 2020.10.16 |
JAVA error) Implicit super constructor is undefined, Constructor call must be the first statement in a constructor. (0) | 2020.10.14 |
JAVA ) java 2차원 배열 관련.. , 열혈 java 프로그래밍 309쪽 문제 2번 (0) | 2020.10.10 |
Comments