• ベストアンサー

jspのif文にて、特殊文字含む文字列が一致しない

jspのif文にて、特殊文字を含む文字列が一致しません。 c:if文にて、特殊文字を含む文字列一致判定をする方法を教えていただきたいです。 以下のコードを試しましたが一致しませんでした。ダブルクォーテーションを除去すると、一致しました。(javaからは\"、jspからは&quot;を除去) javaコード ------------------------------------------ modelAndView.addObject("key", "\"0000000000\""); ------------------------------------------ jspコード ------------------------------------------ <c:if test="${key == &quot;0000000000&quot;}"> <b>一致しました</b> </c:if> <c:if test="${key == '&quot;0000000000&quot;'}"> <b>一致しました</b> </c:if> ------------------------------------------

質問者が選んだベストアンサー

  • ベストアンサー
  • luka3
  • ベストアンサー率72% (424/583)
回答No.1

&quot; はHTMLでのエスケープなので、JavaScript中では \" または \x22 とするのではないでしょうか? &quot;0000000000&quot;  ⇒ \"0000000000\" もしくは \x220000000000\x22 JSPは使ったことがないので、見当違いでしたらすみません。

mirumen
質問者

お礼

ご回答ありがとうございます! \"0000000000\"は一致せず、 \x220000000000\x22は期待する値じゃないとのことでエラーが出ました。(Encountered …Was expecting one of …) 以下の方法で、部分一致で判定することができました! <c:if test="${fn:containsIgnoreCase(key,'0000000000')}"></c:if>

関連するQ&A