반응형
1. indexOf(찾는문자, from index)
indexOf() 는 간단하게 내가 찾고싶은 문자열의 index를 반환해준다.
String str ="010-1234-5678";
str.indexOf("-") // 3
※ 주의할 점은 같은 문자가 여러 개 있어도 처음 찾은 문자의 index만 반환한다. 만약 뒤에 있는 "-"를 반환하고 싶다면
String str ="010-1234-5678";
str.indexOf("-",4) // 8
3번 index에 "-"가 있었으니 3번 이후인 4번 index를 넣어주면 4번 index부터 내가 찾는 문자를 찾아준다.
2. substring(start index, end index)
end index는 생략 가능하다 ..
String str = "가나다라마바사";
str.substring(0,4); //가나다라 (0번째 index '가'부터 4번째 index '마' 전인 '라'까지 출력)
str.substring(4); //마바사 (end index 생략시 start index 부터 끝까지 출력)
※ 주의할 점은 end index까지가 아닌 end index 직전까지 출력이 된다는 점이다
간단하게 활용을 해보자
//특정 문자 이후로 자르고 싶을때
String str = "가나다#라마바";
str.substring(str.indexOf("#")+1); //indexOf를 활용할 수 있다.
//마지막 n개 단어를 자르고 싶을때
str.substring(str.length()-n); //n이 3이라면 마지막 3단어인 '라마바' 출력
3. split(기준문자)
split 은 문자열을 특정한 문자를 기준으로 잘라준다 여기서 중요한 건 자른 문자열들을 배열에 넣어준다는 것이다
문자열->배열 이 때문에 코테 등에서 잘 활용할 수 있다.
String str = "1/2/3/4/5";
String[] arr = str.split("/"); //꼭 배열을 만들에 배열에 담아줘야한다.
for(int i=0;i<arr.length;i++){
System.out.println(arr[i]);
}
//1
//2
//3
//4
//5
간단하게 활용을 해보자
//한 단어씩 배열에 넣기
String str = "안녕하세요";
String[] arr = str.split(""); //아무런 설정도 안 해주면 한 단어씩 잘라준다.
for(int i=0;i<arr.length;i++){
System.out.println(arr[i]);
}
//안
//녕
//하
//세
//요
//공백으로 잘라 배열에 넣기
String str = "안녕하세요 저는 자바 입니다.";
String[] arr = str.split(" "); //공백으로 설정
for(int i=0;i<arr.length;i++){
System.out.println(arr[i]);
}
//안녕하세요
//저는
//자바
//입니다.
※split() 은 문자열을 배열로 바꿔준다는 성질을 기억하면 여러모로 써먹기 좋다!!
반응형