본문 바로가기
programming/javascript

자바스크립트 문자열 찾기 indexOf 메서드 시작위치 지정 javascript string search indexof startposition

by 개코 - 개발과 코딩 2021. 11. 15.

자바스크립트에서 문자열을 찾기 위해 사용하는 것이 indexOf 이다. indexOf 메서드는 첫번째로 검색된 문자열의 첫번째 글자의 인덱스위치를 가져온다. 만약 중복된 다른 문자열을 검색할 경우 시작위치를 인자값으로 추가하여 첫번째가 아닌 두번째 세번째 의 다른 문자열 또한 검색할 수 있다.

자바스크립트 문자열 찾기 indexOf 메서드 시작위치 지정
javascript string search indexof startposition

indexOf 는 장문의 문자열에서 찾을 문자열의 인덱스번호를 찾는 메서드이다.

중복되는 문자열이 있을 경우 첫번째로 발견한 문자열의 첫번째 글자의 인덱스번호를 가져온다.

만약, 찾을 문자열이 없다면 -1 을 결과로 보여준다.

indexOf 메서드에 숫자를 인자값으로 추가하면 찾을 문자열의 시작위치를 지정할 수 있다.

무조건 찾을 문자열을 첫번째가 아닌 다른 위치에서 검색하여 첫번째로 나오는 문자열을 검색할 수 있다.

사용 방법

indexOf 메서드에 문자열을 검색하고자 할 때 시작위치를 지정하려면 두 번째 인자값으로 숫자를 넣어주면 된다.

String.indexOf("찾을 문자열", 문자열 검색 시작위치)

만약 장문의 어떤 문자열에서 검색할 문자열이 여러 개 있는 경우 시작위치를 바꿔가면서 검색할 필요가 있다.

이 때 사용하는 것이 시작위치 인자값이다.

첫번째 단어를 검색하여 찾았다고 하고 시작위치를 변경해 주면 두번째에 위치한 문자열을 찾을 수 있다.

샘플코드

위의 코드를 이용하여 자바스크립트 코드를 만들어 본다.

중복되는 문자열은 테스트를 위해 여러 개 넣고 위치만 바꿔준다.

코드가 길어보지만 별 것 없다.

<!DOCTYPE html>
<html>
    <body>

        <h1>자바스크립트 문자열 IndexOf 메서드 시작위치 지정</h1>

        <script>

            console.log("----------");

            let vStr = "블랙핑크, 블랙핑크, 블랙핑크";
            console.log(typeof(vStr), vStr);

            let vIdx = 0;
            
            vIdx = vStr.indexOf("블랙핑크");
            console.log(typeof(vIdx), vIdx);
            
            vIdx = ResetStartIndex(vIdx);
            vIdx = vStr.indexOf("블랙핑크", vIdx);
            console.log(typeof(vIdx), vIdx);
            
            vIdx = ResetStartIndex(vIdx);
            vIdx = vStr.indexOf("블랙핑크", vIdx);
            console.log(typeof(vIdx), vIdx);

            vIdx = ResetStartIndex(vIdx);
            vIdx = vStr.lastIndexOf("blackpink", vIdx);

            console.log(typeof(vIdx), vIdx);

            console.log("----------");

            function ResetStartIndex(pIndex){
                return ( pIndex + 1 );
            }

        </script>
        
    </body>
</html>

첫번째로 블랙핑크를 검색하면 첫번째로 검색된 단어의 첫글자의 위치가 0이다.

그렇기에 0을 결과로 보여준다.

이후 +1 을 하여 시작위치를 변경해 준다.

시작위치를 변경하여 다시 블랙핑크를 검색한다.

시작위치가 변경된 위치에서 검색된 블랙핑크 란 단어의 위치가가 결과로 나온다.

결과 화면을 보자.

제대로 검색되는 것을 확인할 수 있다.

단 검색할 문자열이 없는 경우 -1 을 결과로 보여준다.

반응형

댓글