자바&스프링

[자바] java에서 자주 쓰이는 문자열 함수 10가지 indexOf, substring, replace 등

내가 그린 코딩 그림 2023. 4. 8. 11:16
반응형

언어를 가장 처음 접할 때 문자열을 처리하는 함수들은 꽤 헷갈리곤 합니다. indexOf, substring 등 자주 쓰이지만 정리를 안하면 정확히 어떤 기능을 하는건지 헷갈리기 때문에 정리를 해봤습니다.

 

 

 

IDE로 보는게 더 깔끔한거 같아서 사진위주로 올렸고, 혹시나 쓰실 수도 있기 때문에 복사 가능하도록 코드를 따로 남깁니다.

/** 자바에서 자주 쓰이는 문자열 처리 함수 10가지 */

        // 1. length() 문자열의 길이 반환
        String str = "Hello I am good!";
        int len = str.length(); // 9

        // 2. substring(시작, 끝) 문자를 지정한 길이만큼 자름(시작점, 끝점)
        String str2 = "Hello I am good!";
        String sub = str2.substring(0, 5); // Hello

        // 3. indexOf() 해당 글자 처음 발견되는 인덱스 위치 반환
        String str3 = "Hello I am good!";
        int index = str3.indexOf('o'); // 4
        int index2 = str3.indexOf("good"); // 11
        int index3 = str3.indexOf("goodqqsd"); // -1 (없는 경우 -1 반환)

        // 4. split(자를기준) 매개변수 기준으로 문자열을 분리
        String str4 = "Hello I am good!";
        String[] arr = str4.split(" "); // 띄어쓰기로 자름 {"Hello", "I", "am", "good"}

        // 5. toLowerCase()
        String str5 = "Hello I am good!";
        String lowerCase = str5.toLowerCase(); // hello i am good!

        // 6. toUpperCase()
        String str6 = "Hello I am good!";
        String upperCase = str6.toUpperCase(); // HELLO I AM GOOD!

        // 7 trim() 양 옆 공백을 날림
        String str7 = "          Hello     I am       ";
        String trimEx = str7.trim(); // "Hello     I am"

        // 8. replace(oldStr, newStr) oldStr을 newStr로 바꿈
        String str8 = "Hello I am good!";
        String replaceEx = str8.replace("o", "A"); // "HellA I am gAAd!"

        // 9. contains(매개변수) 매개변수를 포함하는지 여부
        String str9 = "Hello I am good!";
        boolean containsEx = str9.contains("Hello"); // true
        boolean containsEx2 = str9.contains("HHHello"); // false

        // 10. replaceAll(정규식, 뭘로바꿀지)
        String str10 = "Hello, 123!@# world!";
        String regex = "[^a-zA-Z]"; // 영문자만 남기는 정규식
        String replaced = str10.replaceAll(regex, ""); // "Helloworld"

 

반응형