투케이2K

274. (java/자바) [유틸 파일] start , end 시작 및 종료 기준 특정 문자 모두 제거 실시 본문

Java

274. (java/자바) [유틸 파일] start , end 시작 및 종료 기준 특정 문자 모두 제거 실시

투케이2K 2022. 8. 3. 09:27

[개발 환경 설정]

개발 툴 : Eclipse

개발 언어 : Java

 

[소스 코드]

    // TODO [start 시작 기준 특정 문자 지우기 실시]
    public static String startRemoveChar(String stringData, String charData){

        /**
         * // -----------------------------------------
         * [startRemoveChar 메소드 설명]
         * // -----------------------------------------
         * 1. start 시작 기준 특정 문자 지우기 실시
         * // -----------------------------------------
         * 2. 호출 방식 : C_Util.startRemoveChar("@@@@@투케이@", "@");
         * // -----------------------------------------
         * 3. 리턴 데이터 : 투케이@
         * // -----------------------------------------
         * */

        // [리턴 반환 변수 선언 실시]
        String returnData = "";

        // [인풋 데이터 조건 체크 수행 실시]
        try {
            if (stringData != null
                    && stringData.length() > 0
                    && stringData.trim().equals("") == false
                    && stringData.trim().equals("null") == false
                    && stringData.trim().equals("undefined") == false

                    && charData != null
                    && charData.length() > 0
                    && charData.trim().equals("") == false
                    && charData.trim().equals("null") == false
                    && charData.trim().equals("undefined") == false){ // [조건 만족 함]

                if (stringData.contains(charData) == true){ // [전체 문자열에서 특정 문자를 포함하는지 확인 실시]

                    // [플래그 값 지정 실시]
                    boolean stopFlag = false;

                    // [for 반복문을 돌면서 데이터 삽입 실시]
                    for (int i=0; i<stringData.length(); i++) {

                        if (String.valueOf(stringData.charAt(i)).equals(charData) == true){

                            // [문자열이 제거하려는 문자와 같은 경우]
                            if (stopFlag == false){
                            }
                            else {
                                // [리턴 변수에 삽입 실시]
                                returnData = returnData + String.valueOf(stringData.charAt(i));
                            }
                        }
                        else {
                            // [문자열이 제거하려는 문자와 다른 경우]

                            // [플래그 값 변경 실시]
                            stopFlag = true;

                            // [리턴 변수에 삽입 실시]
                            returnData = returnData + String.valueOf(stringData.charAt(i));
                        }
                    }
                }
            }
        }
        catch (Exception e){
            e.printStackTrace();
        }

        // [로그 출력 실시]
        ///*
        Log.i("---","---");
        Log.d("//===========//","================================================");
        Log.i("","\n"+"[C_Util >> startRemoveChar() :: start 시작 기준 특정 문자 지우기 실시]");
        Log.i("","\n"+"--------------------------------");
        Log.i("","\n"+"[input [string] :: "+String.valueOf(stringData)+"]");
        Log.i("","\n"+"--------------------------------");
        Log.i("","\n"+"[input [char] :: "+String.valueOf(charData)+"]");
        Log.i("","\n"+"--------------------------------");
        Log.i("","\n"+"[return [string] :: "+String.valueOf(returnData)+"]");
        Log.d("//===========//","================================================");
        Log.i("---","---");
        // */

        // [리턴 결과 반환 실시]
        return returnData;
    }





    // TODO [end 종료 기준 특정 문자 지우기 실시]
    public static String endRemoveChar(String stringData, String charData){

        /**
         * // -----------------------------------------
         * [endRemoveChar 메소드 설명]
         * // -----------------------------------------
         * 1. start 시작 기준 특정 문자 지우기 실시
         * // -----------------------------------------
         * 2. 호출 방식 : C_Util.endRemoveChar("@투케이@@@@@", "@");
         * // -----------------------------------------
         * 3. 리턴 데이터 : @투케이
         * // -----------------------------------------
         * */

        // [리턴 반환 변수 선언 실시]
        String returnData = "";

        // [인풋 데이터 조건 체크 수행 실시]
        try {
            if (stringData != null
                    && stringData.length() > 0
                    && stringData.trim().equals("") == false
                    && stringData.trim().equals("null") == false
                    && stringData.trim().equals("undefined") == false

                    && charData != null
                    && charData.length() > 0
                    && charData.trim().equals("") == false
                    && charData.trim().equals("null") == false
                    && charData.trim().equals("undefined") == false){ // [조건 만족 함]

                if (stringData.contains(charData) == true){ // [전체 문자열에서 특정 문자를 포함하는지 확인 실시]

                    // [플래그 값 지정 실시]
                    boolean stopFlag = false;

                    // [for 반복문을 돌면서 데이터 삽입 실시]
                    for (int i=stringData.length()-1; i>=0; i--) {

                        if (String.valueOf(stringData.charAt(i)).equals(charData) == true){

                            // [문자열이 제거하려는 문자와 같은 경우]
                            if (stopFlag == false){
                            }
                            else {
                                // [리턴 변수에 삽입 실시]
                                returnData = String.valueOf(stringData.charAt(i)) + returnData;
                            }
                        }
                        else {
                            // [문자열이 제거하려는 문자와 다른 경우]

                            // [플래그 값 변경 실시]
                            stopFlag = true;

                            // [리턴 변수에 삽입 실시]
                            returnData = String.valueOf(stringData.charAt(i)) + returnData;
                        }
                    }
                }
            }
        }
        catch (Exception e){
            e.printStackTrace();
        }

        // [로그 출력 실시]
        ///*
        Log.i("---","---");
        Log.d("//===========//","================================================");
        Log.i("","\n"+"[C_Util >> endRemoveChar() :: end 종료 기준 특정 문자 지우기 실시]");
        Log.i("","\n"+"--------------------------------");
        Log.i("","\n"+"[input [string] :: "+String.valueOf(stringData)+"]");
        Log.i("","\n"+"--------------------------------");
        Log.i("","\n"+"[input [char] :: "+String.valueOf(charData)+"]");
        Log.i("","\n"+"--------------------------------");
        Log.i("","\n"+"[return [string] :: "+String.valueOf(returnData)+"]");
        Log.d("//===========//","================================================");
        Log.i("---","---");
        // */

        // [리턴 결과 반환 실시]
        return returnData;
    }
 

[결과 출력]

 

 

반응형
Comments