[JAVA] String 문자열 자르기/치환하기 - split(), substring(), replace()

·2021년 7월 4일
2

JAVA

목록 보기
1/2

문자열 문제만 나오면 대충은 아는데 제대로 몰라서 항상 검색해서 풀이하게 된다. 이번 기회에 잘 기억해두려고 정리하는 포스팅!

일단 기본

java에서 문자열은 자바에서 제공하는 String 클래스를 사용한다.
String 객체를 생성한 후, 문자열을 조작할 때 사용할 수 있는 메소드를 몇가지 기억해보자.

substring()

원하는 문자열만큼 추출하는 메소드. subsring에는 2가지가 있다.

  • substring (int beginIndex) : 시작 인덱스부터 끝까지
  • substring (int beginIndex, endIndex) : 시작 인덱스부터 끝 인덱스-1까지
String str = "0123456789";

str.substring(5); // 56789
str.substring(1,4); // 123 

split()

  • split(String regex) : 파라미터로 들어오는 문자열을 기준으로 문자열을 쪼갠다. String[]을 리턴함.
String str = "abcd#efg";
String[] splited = str.split("#"); // splited[0]: abcd, splited[1]: efg

String str2 = "aaa bbb ccc";
String[] splited2 = str.split(" "); // splited2[0]: aaa, splited2[1]: bbb, splited2[2]: ccc

replace(), replaceAll(), replaceFirst()

문자열을 다른 문자열로 치환할 때 사용.
치환 메소드이긴 한데 주로 문자열에서 특정 문자를 삭제할때 유용하게 사용한다.

  • replace(CharSequence target, CharSequence replacement) : 모든 target replacement로 치환
String str = "a,b,c,d,e";
System.out.println(str.replace(",", " ")); // a b c d e
System.out.println(str.replace(",", "")); // abcde
  • replaceAll(String regex, String replacement) : replace()와 비슷하나, 첫번째 인자로 정규식을 넣는다.

  • replaceFirst(String target, String replacement) : 첫번째 발견되는 target만 치환한다.

String str = "a,b,c,d,e";
System.out.println(str.replaceFirst(",", " ")); // a b,c,d,e
System.out.println(str.replace(",", "")); // ab,c,d,e

그 외

compareTo(), charAt() 등의 여러 메소드가 더 있지만 나중에 더 정리해보도록 하겠다!

참고 사이트

https://docs.oracle.com/javase/7/docs/api/

profile
당근먹고 자라나는 개발자

0개의 댓글