10

ELでequalIgnoreCaseをチェックする方法は?

String a = "hello";
a.equalsIgnoreCase("hello");

今JSPページに。

<h:panelGroup rendered="#{patientNotePrescriptionVar.prescriptionSchedule ==  patientNotePresBackingBean.sendPrescription}">
            ... Some code here ....
</h:panelGroup>

equalIgnoreCasepatientNotePresBackingBean.sendPrescriptionとして比較する方法はありますか?

4

2 に答える 2

21

EL 2.2(サーブレット3.0の一部)またはJBoss ELを使用している場合は、ELでそのメソッドを呼び出すことができるはずです。

<h:panelGroup rendered="#{patientNotePrescriptionVar.prescriptionSchedule.equalsIgnoreCase(patientNotePresBackingBean.sendPrescription)}">

EL 2.2をまだ使用していない場合、最善の策は、両方の文字列をJSTL fn:toLowerCase()(またはfn:toUpperCase())に渡してから比較することです。

<%@taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
...
<h:panelGroup rendered="#{fn:toLowerCase(patientNotePrescriptionVar.prescriptionSchedule) == fn:toLowerCase(patientNotePresBackingBean.sendPrescription)}">

ただし、大文字と小文字を区別しない方がよいでしょう。それらが何らかの定数を表す場合は、列挙型などにする方がよいでしょう。

于 2012-05-18T13:27:28.907 に答える
5

両方のオペランドを小文字に変換してから、それらを同等にすることができます。

JSTLの場合は

fn:toLowerCase(patientNotePrescriptionVar.prescriptionSchedule) eq fn:toLowerCase(patientNotePresBackingBean.sendPrescription)

JSFで同様のことができるかどうかを確認してください。最近、JSFと連絡が取れなくなってしまいました。ごめんなさい。

于 2012-05-18T13:23:24.457 に答える