Blogger - 07 Membership 연산자

Blogger 멤버쉽 연산자 - a in Array, Array contains a

Membership 연산자는 값이 시퀀스의 멤버인지 확인합니다. 연산 결과는 항상 불리언(boolean) 값을 반환합니다.

Membership 연산자

연산자 설명
in 배열에서 a를 발견하는지 a in Array
contains 배열에서 a를 포함하는지 Array contains a

예제

첫 번째는 'naver'가 배열에 있으면 true를, 없으면 false를 반환하는 코드입니다.

두 번째는 'naver'가 배열에 있으면 false를, 없으면 true를 반환하는 코드입니다.

<b:eval expr='"naver" in ["naver", "tistory", "blogger"]' />
<!--
결과:
true
-->

<b:eval expr='"naver" not in ["naver", "tistory", "blogger"]' />
<!--
결과:
false
-->

자료를 검색하는 방향이 다를 뿐 in 연산자와 contains 연산자의 기능은 동일합니다.

<b:eval expr='"naver" in ["naver", "tistory", "blogger"]' />
<!--
결과:
true
-->

<b:eval expr='["naver", "tistory", "blogger"] contains "naver"' />
<!--
결과:
true
-->

실전 예제 1

다음은 게시물 본문(post.body)에 '블로그'를 포함하고 있으면 '안녕'을 출력하는 코드입니다.

<b:if cond='data:post.body contains "블로그"'>
  <h1>안녕</h1>
</b:if>

실전 예제 2

아래 코드는 검색 라벨이 apple, banana이면 '과일'을 반환하고, 아니면 '안녕'을 반환하는 코드입니다.

<b:eval expr='data:view.search.label in ["apple", "banana"] ? "과일" : "안녕"'/>

실전 예제 3

현재 페이지의 게시물 수가 7개 또는 20개 또는 50개의 게시물이 있고, 게시물 목록이면 true를 반환합니다.

<b:eval expr='data:posts.size in [7, 20, 50] and data:view.isMultipleItems'/>

Post a Comment