repalce()

- String replace(CharSequence target, CharSequence replacement)

- replace() 함수는 대상 문자열을 원하는 문자값으로 변환하는 함수이다.

- 첫번째 매개변수변환하고자 하는 대상이 될 문자열

- 두번째 매개변수변환할 문자 값

 

public class ReplaceTest{
    public static void main(String[] args){

        String replaceTest = "우리의 리플레이스 테스트";
        System.out.println( replaceTest.replace("리플레이스","replace") );
        //  우리의 replace 테스트
    }
}

repalceAll()

- String replaceAll(String regex, String replacement)

- replaceAll() 함수는 대상 문자열을 원하는 문자값으로 변환하는 함수이다.

- 첫번째 매개변수변환하고자 하는 대상이 될 문자열

- 두번째 매개변수변환할 문자 값

 

public class ReplaceAllTest{
    public static void main(String[] args){

        String replaceAllTest = "우리의 리플레이스의 리플레이스테스트";
        System.out.println( replaceAllTest.replaceAll("리플레이스","replaceAll") );
        //  우리의 replaceAll의 replaceAll테스트
    }
}

replace() vs repalceAll()

이쯤되면 이제 replace()replaceAll()차이점이 뭘까 하는 생각을 가질수 있는데

인자 값의 형태를 보면 CharSequenceString 이라는 차이점을 볼 수 있습니다.

그리고 replaceAll() 의 설명을 보면 regex 라 나와있는데 아시다시피 이것은 "정규 표현식" 을 의미하죠

 

개발을 할때 역시 정규표현식을 이용하여 많이들 개발을 하는데 replaceAll()은 정규표현식 사용이 가능합니다.

 

public class AllTest{
    public static void main(String[] args){
    
        String allTest = "aaabbbvccacfgdracabtghd";
        System.out.println( allTest.replace("ab","0") );
        //  aa0bbvccacfgdrac0tghd

        System.out.println( allTest.replaceAll("[ab]","0") );
        //  000000vcc0cfgdr0c00tghd
    }
}

 

trim()으로 지울수없는 글자 사이사이 공백을 제거할때 replace 함수를 사용하기도 합니다.


replaceFirst()

추가적으로 이게 있는데 사용법은 위와 전부 같으나

First라는것을 보고 알수 있듯이 처음 나오는 단어를 찾아서 바꿔주는 함수이다.

 

 	String replaceFirstTest = "우리의 리플레이스의 리플레이스테스트";

	System.out.println( replaceFirstTest.replaceFirst("리플레이스","replaceFirst") );
	//  우리의 replaceFirst의 리플레이스테스트

 

 

 

반응형