본문 바로가기
programming/javascript

자바스크립트 문자열 찾기 search 메서드 사용

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

자바스크립트의 search 메서드는 찾을 문자열과 정규식을 사용하여 찾을 문자열의 위치를 찾을 수 있다. indexOf 와 비슷한 기능을 가지고 있지만, indexOf 메서드와는 다르게 search 메서드는 정규식을 사용할 수 있다. indexOf 메서드는 정규식을 사용할 수 없다.

자바스크립트 문자열 찾기 search 메서드 사용

자브스크립트에서 문자열을 찾을 때 indexOf 메서드와 비슷한 기능을 하는 것이 하나가 있다.

search 메서드이다.

이것은 잘 사용하는 일이 없을 수도 있다.

기능이 한정적이기 때문이기도 하다.

search 메서드가 indexOf 메서드와 차이를 보이는 점이 하나가 있다.

바로 시작위치를 지정할 수 없다.

search 메서드는 정규식을 사용할 수 있지만, indexOf 메서드는 정규식을 사용할 수 없다.

사용방법

자바스크립트에서 search 메서드를 사용하여 문자열을 찾는 방법은 간단하다.

찾을 문자열을 인자값으로 넣어주거나, 정규식을 사용한 인자값을 넣어주면 된다.

정규식을 사용할 수 있다는 것은 그만큼 활용정도가 많다는 것이기도 하지만, 잘 보이지도 않는 것은 다 이유가 있기도 하다.

어쨌든 search 메서드를 사용하면 결과값으로 찾을 문자열의 첫번째 문자의 위치를 결과로 보여준다.

String.search("찾을 문자열")

String.search(정규식)

샘플코드

위에서 언급된 코드로 search 메서드를 사용해 보도록 한다.

어쩌면 사용할 일이 없을 수도 있을 테지만 한번쯤은 보고 넘어가자.

indexOf 메서드와의 비교를 하기 위해 같이 사용해 보도록 한다.

<!DOCTYPE html>
<html>
    <body>

        <h1>자바스크립트 문자열 search 메서드</h1>

        <script>

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

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

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

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

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

search 메서드는 indexOf 메서드와 같은 결과를 보여준다.

결과를 보자.

같은 결과를 보여주고 있지만, 차이가 있고, 사용방법이 조금 다르다.

 

반응형

댓글