일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 제이쿼리
- Eclipse
- html
- Oracle
- Stock ipo
- php
- SQL
- 리눅스
- linux
- 공모주 청약
- codeigniter
- jquery
- 6월 공모주 청약 일정
- 주식
- 7월 공모주 청약 일정
- 공모주 청약 일정
- 주식 청약
- 맥
- 자바스크립트
- MYSQL
- css
- Stock
- 주식 청약 일정
- IPO
- 공모주
- 자바
- JavaScript
- 코드이그나이터
- java
- 오라클
- Today
- Total
개발자의 끄적끄적
[java] 문자열 자르기(Substring, Split) 사용법 & 예제 본문
[java] 문자열 자르기(Substring, Split) 사용법 & 예제
자바 스트링 클래스에는 사용하기 편리하도록 만들어놓은 여러가지 함수가 있습니다. 이번 포스팅에서는 그 함수들중 문자열 자르기에 관련된 함수들을 한번 알아보도록 하겠습니다.
▶SubString
문자열 자르기하면 가장먼저 생각나는 함수입니다.
문자열 함수에 익숙해지시면 SubString함수와 다른함수들을 섞어서
정말 다양하게 활용할 수 있는데요.
사용법에 대해 한번 알아보도록 하겠습니다.
활용예제로는 마지막 3글자 자르기, 특정문자 이후의 문자열자르기, 특정(단어) 부분만 자르기 를 준비했습니다.
우선 문자열을 자르기에 앞서 문자열이 어떻게 배치되어있는지 Index값부터 살펴야 문자열을 자를 수 있겠죠?
String 클래스 자체가 char을 여러개 붙여놓은 효과를 주기때문에 String 클래스의 해당 Index값은 다음과 같습니다. String = char배열이라고 생각하셔도 무방합니다.
사용법
//사용법
String.substring(start) //문자열 start위치부터 끝까지 문자열 자르기
String.substring(start,end) //문자열 start위치 부터 end전까지 문자열 발췌
//예제
String str = "ABCDEFG"; //대상 문자열
/*A=0 B=1 C=2 D=3 E=4 F=5 G=6의 index를 가진다.*/
str.substring(3);
/*substring(시작위치) 결과값 = DEFG*/
str.substring(3, 6);
/*substring(시작위치,끝위치) 결과값 = DEF*/
활용예제
//1. 마지막 3글자 자르기
String str = "ABCDEFG";
String result = str.substring(str.length()-3, str.length());
System.out.println(result)
//결과값EFG
//2. 특정문자 이후의 문자열 제거
String str = "ABCD/DEFGH";
String result = str.substring(str.lastIndexOf("/")+1);
System.out.println(result);
//결과값 DEFGH
//3. 특정단어(부분)만 자르기
String str = "바나나 : 1000원, 사과 : 2000원, 배 : 3000원";
String target = "사과";
int target_num = str.indexOf(target);
String result; result = str.substring(target_num,(str.substring(target_num).indexOf("원")+target_num));
System.out.println(result+"원");
//결과값 : 사과 : 2000원
▶Split
자바에서는 특정문자를 기준으로 문자열을 잘라서 배열에 넣어주는 아주 편리한 함수가 있습니다.
바로 Split이죠 저는 이 함수를 정말 좋아합니다.
일부러 데이터베이스에 +#이런식으로 문장끝에 특수기호를 넣어주고
나중에 데이터베이스에서 값을 꺼낼때는 #으로 Split해서 사용하는 등 아주 활용도가 높은 함수입니다.
그림을 통해 Split함수를 살펴보겠습니다.
Split
보시는바와 같이 Split 함수는 String값을 특수기호로 끊어서 배열에 저장시켜줍니다.
저는 Substring보다 Split이 몇배는 더 많이 사용하는거 같아요
활용예제로는 쉼표(,)로 문자열 잘라서 배열에 넣기와 공백으로 문자열 잘라서 배열에 넣기를 준비했습니다.
사용법
//문법
문자열배열 = 대상문자열.split("기준문자");
//예제
String str = "";
for(int i=0;i<5;i++) {
str += i+"#";
}
String[] array = str.split("#");
for(int i=0;i<array.length;i++) {
System.out.println(array[i]);
}
//결과값
//array[0] = 1
//array[1] = 2
//array[2] = 3
//array[3] = 4
활용예제
//1. 쉼표(,)로 문자열 잘라서 배열에 넣기
String str = "A,B,C,D";
String[] array = str.split(",");
//출력
for(int i=0;i<array.length;i++) {
System.out.println(array[i]);
}
//결과값
//array[0] = A
//array[1] = B
//array[2] = C
//array[3] = D
/*---------------------------------------------------------------------------------------------*/
//2. 공백(" ")으로 문자열 잘라서 배열에 넣기
String str = "동해물과 백두산이 마르고 닳도록 하나님이 보우하사 우리나라 만세";
String[] array = str.split(" ");
//출력
for(int i=0;i<array.length;i++) {
System.out.println(array[i]);
}
//결과값
//array[0] = 동해물과
//array[1] = 백두산이
//array[2] = 마르고
//array[3] = 닳도록
//array[4] = 하나님이
//array[5] = 보우하사
//array[6] = 우리나라
//array[7] = 만세
'개발 > java & jsp' 카테고리의 다른 글
[java/spring] 코드에서 스프링 버전 확인하기 ( SpringVersion.getVersion() ) [펌] (0) | 2020.05.13 |
---|---|
[java] POI 엑셀 생성하기(제목 스타일,본문 스타일 지정,컬럼 사이즈 자동 조정하기) (0) | 2020.05.12 |
[eclipse] 이클립스 프로젝트 자바버전 바꾸기 [펌] (0) | 2020.05.07 |
[java] 현재날짜, 현재시간을 원하는 형태로 출력하는(Format) 다양한 방법 (0) | 2020.04.27 |
[JSTL] <c:import> 사용 Servlet으로 값 보내기 [펌] (0) | 2020.04.27 |