JSP

[JSTL] 특정 문자열 포함 찾기: fn:contains / fn:containsIgnoreCase / fn:indexOf

ZZJJing 2022. 10. 7. 11:42
반응형

 

JSTL을 사용하여 특정 문자열을 포함하는지 확인하는 방법을 알아보겠습니다.

이를 위해 페이지 상단에 태그 라이브러리를 선언해야 합니다.

페이지 상단 태그 라이브러리 선언

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>

특정 문자열 찾기

  1. fn:contains
    • 사용법: fn:contains('문자열', '찾을 문자열')
    • 설명: 포함되는 문자열이 있을 경우 true를 반환합니다.
  2. fn:containsIgnoreCase
    • 사용법: fn:containsIgnoreCase('문자열', '찾을 문자열')
    • 설명: fn:contains와 동일하지만, 대소문자 구분 없이 포함 여부를 확인합니다.
  3. fn:indexOf
    • 사용법: fn:indexOf('문자열', '찾을 문자열')
    • 설명: 포함되는 문자열이 있을 경우 인덱스 번호(위치)를 반환합니다.

변수 선언 및 JSP 페이지에서 처리 예시

<c:set var="str" value="안녕하세요 test!" />

<!-- 1. fn:contains -->
<c:if test="${fn:contains(str, 'test')}">
    <div>str 문장에 test 포함!</div>
</c:if>

<c:if test="${fn:contains(str, 'hi')}">
    <div>str 문장에 hi 포함!</div>
</c:if>

<!-- test="${fn:containsIgnoreCase(str, 'TEST')}">
    <div>str 문장에 TEST 포함!</div>
</c:if>

<c:if test="${fn:containsIgnoreCase(str, 'HI')}">
    <div>str 문장에 HI 포함!</div>
</c:if>

<!-- 3. fn:indexOf : 리턴값이 인덱스 번호(숫자)라서 비교 시 부등호를 사용해야 함 -->
<c:if test="${fn:indexOf(str, 'test') > -1}">
    <div>str 문장에 test 포함!</div>
</c:if>

출력 결과

<div>str 문장에 test 포함!</div>

이렇게 하면 JSTL을 사용하여 특정 문자열을 포함하는지 확인할 수 있습니다. 

728x90
반응형

'JSP' 카테고리의 다른 글

JSP 날짜 비교  (0) 2023.08.09
자주쓰는 JSTL 정리  (0) 2023.02.02
[JSP] JSP 태그  (0) 2022.12.28