2012-08-01 3 views
1

한 문자열에 다른 문자열이 포함되어 있는지 확인하려고합니다. 그러나 불행하게도 fn:contains 함수는 대소 문자를 구분합니다. 대소 문자를 구별하지 못하게하는 방법이 있습니까? JSL EL에서 fn : contains 대소 문자를 사용하는 방법은 무엇입니까?

나는 하나의 케이스에 모두 넣어 시도 :

fn:contains(car.color.toLowerCase(), smartBean.txt.toLowerCase()) ? 'true' : 'false' 

그러나이 방법의 브라켓으로 인해 작동하지 않았다. 또한 f:contains 함수 내에서 f:to-upper을 사용할 수 없습니다.

답변

2

fn:containsIgnoreCase()이 있습니다. 그냥 대신 사용하십시오.

toUpperCase() 작품 좋은뿐만 아니라 사용
#{fn:contains(fn:toLowerCase(car.color), fn:toLowerCase(smartBean.txt))} 

:

#{fn:contains(fn:toUpperCase(car.color), fn:toUpperCase(smartBean.txt))} 

은 아마 당신은 단지 EL 만들어 다음과 같은 방법으로

#{fn:containsIgnoreCase(car.color, smartBean.txt)} 

, 당신의 실패 toLowerCase() 시도가 완료되어 있어야합니다 구문 오류.

? 'true' : 'false' 부분은 함수에 의해 이미 반환되었으므로 완전히 불필요합니다.