본문 바로가기
java

[JAVA] split 로 .닷으로 문자열 나누기

by 헤르쯔44 2022. 8. 26.
728x90
반응형

split로  "." 로 문자열 나누기

split기능으로 문자열에 특정 문자를 기준으로 문자열을 나눌수있다.

"."기준으로 문자열을 나눌때 아래와 같이 입력하면 문자열이 나뉘지 않는다.

    String="2022.08.26"
    String[] arr=a.split(".");

"\\."으로 입력해야 문자열이 나뉜다.

    String="2022.08.26"
    String[] arr=a.split("\\.");

 

 

이건 split의 인자로 들어가는 String이 정규표현식이기 때문이다.

정규식에서 "."는 메타문자(*원래 그 문자가 가진 뜻이 아닌 특정 용도로 사용하는 문자)로 \를 제외한 모든 문자 하나와 일치한다. 그래서 "."로 split를 하게되면 빈 배열을 return하는 것이다.

 

따라서 앞에 \를 이용한 이스케이프 문자를 써야한다. 

또한 \가 붙어있는 메타문자를 사용할때는 앞에 \를 하나 더 붙여줘야하기 때문에 위와같이 작성한다.

 

728x90
반응형

'java' 카테고리의 다른 글

[JAVA]JDK와 JRE의 차이  (0) 2022.05.12
[java]StringTokenizer  (0) 2022.04.21
PrintWriter/InputStreamReader  (0) 2021.10.20
FileReader/FileWriter  (0) 2021.10.20
HashMap/Calender  (0) 2021.10.20