본문 바로가기
컴퓨터관련/JSP, ASP, Ja vaScript

[JavaScript[Indexof 함수를 이용한 문자열 검색

by 빛과 어둠사이 2019. 7. 12.
728x90
반응형
SMALL

오늘은 javascript를 이용한 문자열 검색 방법에 대해서 정리를 해보고자 합니다.

JavaScript는 jsp, asp, php 등 모든 웹 언어에서 사용이 가능합니다.

그래서 많이 사용이 되고 있습니다.


그리고 자바스크립트 함수 중에는 인덱스오브(indexof)라는 함수가 있습니다.

이 함수를 이용해서 문자열을 찾을 수 있습니다.

자세한 방법에 대해서 확인해보도록 하겠습니다.



1. 자바스크립에서의 indexof()함수란?

javascript의 내장 함수입니다.

그래서 쉽게 사용이 가능합니다.

indexof함수는 문자열에서 원하는 문자 혹은 문자열을 찾거나

배열에서 원하는 특정 배열값의 존재여부 등을 확인할 수 있습니다.

배열의 경우, 위치값을 index로 반환합니다.


2. 사용방법

사용방법은 아주 간단합니다.

"문자열".IndexOF("찾을문자")


그런데 이 indexof함수의 특징은

위에서도 말한 바와 같이

문자타입(string) 뿐 아니라 배열(array)도 사용이 가능합니다.


3. 사용예제

var text = "1234567890";
var findStr = "123"; // 123이 있는지 찾아보기

if (text.indexOf(findStr) != -1) {
  alert("Find!");
}
else {
  alert("Not Found!!"); 
}

위 소스에서 보면 123이 있습니다.

그렇기 때문에 Find!라고 alert 창이 뜹니다.


위 소스에서 보면 if문에서 -1인지를 체크하게 되어 있습니다.

indexof함수에서는 문자를 찾고, 그 결과를 숫자로 반환합니다.

그리고 결과값이 없으면 -1을 반환합니다.

결과값이 있을 경우에는 해당 위치에 해당하는 index를 반환합니다.



4. -1의 의미

다르게 생각하면 0으로도 되지 않을까??

이런 생각을 할 수도 있습니다.

하지만, 0은 첫 문자에서 검색이 될 경우 나올 수 있습니다.

그런데 -1은 음수로, 문자가 있다면 절대 나올 수 없는 것입니다.

그렇기 때문에 indexof함수에서는 없을 때는 -1을 반환하는 것입니다.




5. 참고사항

문자열 검색을 하는 방법으로는 match함수도 있습니다

이 함수를 이용해서 해당 텍스트의 포함 여부를 알 수도 있습니다.

하지만, match함수는 문자열에만 사용이 가능합니다.

배열에서는 사용이 안됩니다.

그리고 정규식표현을 사용할 수 있습니다.

이런 차이점이 있기 때문에

상황에 맞춰서, 필요에 맞춰서 사용해주시면 되십니다.



이상으로 javascript에서 indexof()함수를 이용한 문자 검색에 대한 설명이였습니다~

728x90
반응형
LIST