logic:match和logic:notMatch
比较两字符串是否相等,可以比较字符串的开始的、结尾的或其中的某个部分。
location属性:指定从某个位置开始进行比较。
其它的属性有:name、property、scope、value、cookie、header、parameter。
下面的例子是检查浏览器类型:
c:
检查名为"name"的请求参数是否是"xyz"的子字符串,但是子字符串必须从"xyz"的索引位置1开始(也就是说子字符串必须是"y"或"yz"):
比较两字符串是否相等,可以比较字符串的开始的、结尾的或其中的某个部分。
location属性:指定从某个位置开始进行比较。
其它的属性有:name、property、scope、value、cookie、header、parameter。
下面的例子是检查浏览器类型:
<logic:match header="User-Agent" value="Mozilla"> Mozilla! </logic:match> <logic:notMatch header="User-Agent" value="Mozilla"> Not Mozilla :( </logic:notMatch> |
c:
<logic:match name="bean" property="stringProperty" value="hello world"> Hello World! </logic:match> <logic:notMatch name="bean" property="stringProperty" value="hello world"> I'm so sad and lonely. </logic:notMatch> |
检查名为"name"的请求参数是否是"xyz"的子字符串,但是子字符串必须从"xyz"的索引位置1开始(也就是说子字符串必须是"y"或"yz"):
<logic:match parameter="name" value="xyz" location="1"> The parameter name is a sub-string of the string xyz from index 1 </logic:match> |
看上面的说明感觉用起来并不难,但应该注意的一点是:
在<logic:match name="bean" property="stringProperty" value="hello world">
Hello World!
</logic:match>
中,需要先判断bean是否存在,否则会出现异常。
可以使用<logic:present name="bean" property="stringProperty"></logic:present>进行判断