El表达式与正则表达式

第一次写博客,主要用于总结知识,有错的地方欢迎指教。

EL表达式

EL表达式作用?

它使得jsp的Java代码变得简洁。jsp不能直接对隐式的对象属性进行操作,EL解决了这个问题。

EL怎么用?

这个我觉得有篇文章写得挺好,简洁易懂。

原文链接:http://www.cnblogs.com/HD/p/3630152.html

<%@page import="java.util.*"%>
<%@page import="java.util.ArrayList"%>
<%@page import="java.util.List"%>
<%@page import="com.amos.model.*"%>
<%@ page isELIgnored="false"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>el表达式学习</title>
</head>
<body>
    第一种,简单取值:
    <%
    String data = "hi,amos!";
    request.setAttribute("data", data);
%>
    ${data}
    <br> 第二种,从bean中取值:
    <%
        Person p = new Person();
        p.setName("amosli");
        session.setAttribute("person", p);
    %>
    ${person.name}
    <br>
    <%=((Person) session.getAttribute("person")).getName()%><br>
    第三种:从复杂bean中取值:
    <%
        Person person1 = new Person();
        Address a = new Address();
        a.setCity("上海");
        person1.setAddress(a);
        application.setAttribute("p1", person1);
    %>
    ${p1.address.city}
    <br> 第四种:从集合中取值:
    <%
        List list = new ArrayList();
        list.add(new Person("amos"));
        list.add(new Person("li"));
        list.add(new Person("amosli"));
        list.add(new Person("hi"));
        list.add(new Person("hi_amos"));
        application.setAttribute("personlist", list);
    %>
    ${personlist[0].name }
    <br>

    <%
        Map map = new HashMap();
        map.put("aa", new Person("aaaa"));
        map.put("cc", new Person("cccc"));
        map.put("dd", new Person("dddd"));
        map.put("ee", new Person("eeee"));
        map.put("11", new Person("111"));

        request.setAttribute("map", map);
    %>
    ${map.dd.name }<br>
    <%-- ${map.11.name } 一般情况下用点号进行取值,如果点号取不出来值,那么可以用[]来代替. --%>
    ${map['11'].name }<br>
    
    获取当前应用的名称:
    ${pageContext.request.contextPath }
    
</body>
</html>

EL注意点:

1、“+”连接符不能连接两个字符串。

2、&&等逻辑运算符只能在两个${}之间才可以。

正则表达式

正则表达式作用?

记录文本规则代码。


正则表达式怎么用?

给大家推荐正则表达式大全:http://blog.csdn.net/onebigday/article/details/5429868

以^开头,以$结尾的是其中的匹配字符

 

匹配字符

/s 表示任意空白字符

/S 表示任意非空白字符

/d 表示任意一个数字也就是[0-9]

/D 表示除了数字的任意字符等同于[^0-9]

/w 表示一个数字,下划线或者字母字符,等价于[A-Za-z0-9]

/W 表示否认上面的就可以了!

.  表示除了换行符之外的任意字符

 

重复字符

{n}  表示匹配前面的那一项n

{n,} 表示匹配前面的那一项n次,或者更多次

{n,m}表示匹配前面的那一项n次,但是不能超过m

*    表示匹配前面的那一项0次,或者更多次  等价于{0,}

+    表示匹配前面的那一项1次或者多次,等价于{1,}

?    表示匹配前面的那一项0次或者1次。也就是可有可没有,等价于{0,1}






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值