Computer >> 컴퓨터 >  >> 프로그래밍 >> 프로그래밍

JSP에서 문자열 내 특정 부분 문자열의 인덱스를 확인하는 방법

JSTL에서 제공하는 fn:indexOf() 함수는 문자열 안에서 지정된 부분 문자열이 처음 나타나는 위치의 인덱스를 반환합니다. 인덱스는 0부터 시작하며, 만약 해당 부분 문자열이 존재하지 않으면 -1을 반환합니다.

문법

fn:indexOf() 함수는 다음과 같은 형식으로 사용합니다.

int indexOf(java.lang.String, java.lang.String)

첫 번째 매개변수는 검색 대상이 되는 원본 문자열이고, 두 번째 매개변수는 찾고자 하는 부분 문자열입니다.

예제

다음 예제를 통해 fn:indexOf() 함수의 동작 방식을 살펴보겠습니다.

<%@ taglib uri = "https://java.sun.com/jsp/jstl/core" prefix = "c" %>
<%@ taglib uri = "https://java.sun.com/jsp/jstl/functions" prefix = "fn" %>
<html>
   <head>
      <title>Using JSTL Functions</title>
   </head>
   <body>
      <c:set var = "string1" value = "This is first String."/>
      <c:set var = "string2" value = "This <abc>is second String.</abc>"/>
      <p>Index (1) : ${fn:indexOf(string1, "first")}</p>
      <p>Index (2) : ${fn:indexOf(string2, "second")}</p>
   </body>
</html>

위 코드에서는 태그로 두 개의 문자열 변수를 선언한 뒤, 각각 "first"와 "second"라는 단어가 등장하는 위치를 fn:indexOf()로 조회합니다. 실행 결과는 다음과 같습니다.

Index (1) : 8
Index (2) : 13

첫 번째 결과에서 "This is "가 8글자이므로 "first"는 인덱스 8에서 시작하고, 두 번째 문자열에서 "second"는 인덱스 13에 위치함을 알 수 있습니다. 이처럼 fn:indexOf()는 문자열 검색 및 위치 기반 처리 로직을 구현할 때 유용하게 활용됩니다.