正则表达式 回顾 & HTML 回顾

正则表达式 回顾 & HTML 回顾
正则表达式 回顾:
    是一种专门用于操作字符串的规则.
    通过一些符号来表示,简化对字符串的复杂操作.
    弊端:阅读性较差.

    常见的操作:
    1,匹配.String matches(regex)
    2,获取(查找): Pattern , Matcher
        Pattern p = Pattern.compile(regex);
        Matcher m = p.matcher(String);

        while(m.find())//find()尝试查找与该模式匹配的输入序列的下一个子序列。
        {
                System.out.println(m.group());//String group() , 返回由以前匹配操作所匹配的输入子序列。 
        }
    3,切割: String split(regex);
    4,替换:String replaceAll(regex,str);

    示例:

        String regex = "\\d{5,}";//数字 5个以上
        Pattern p = Pattern.compile(regex);
        Matcher m = p.matcher(String);

        while(m.find())//find()尝试查找与该模式匹配的输入序列的下一个子序列。
        {
                String s =m.group();//String group() , 返回由以前匹配操作所匹配的输入子序列。 
                s.replaceAll(regex,"#");//替换
        }
    网页爬虫:
    通过网络以及IO读取网页的源文件,并通过规则获取网页中的符合规则的数据.
    比如:mail爬虫.
    String mailreg = "[a-zA-Z0-9_]{6,12}@[a-zA-Z0-9]+(\\.[a-zA-Z]+)+";
    正则表达式中组的含义:将部分进行封装以便重用. \\num 反向引用指定组.

    示例:IP地址排序 
-------------------
-----------------
html:超文本标记语言.
    html语言中是由标签组成的.
    html中的数据都会封装在标签中.因为可以通过标签中的属性值的改变对封装内数据进行操作.

    确定html代码范围.<html> </html>
    在该范围中可以定义两部分内容,一部分是头,一部分是体.
    <html>
        <head> </head>
        <body> </body>
    </html>

    head:网页的一些属性信息.比如:标题.
    body:网页显示的数据.

    标签特点:对于数据进行封装,那么就有开始标签和结束标签.
        但是也有一些标签只体现单一功能,所以不需要结束标签,规范中要求标签必须要结束,所以这样的标签在内部结束.
        如:<br/> <hr/> <img /> <input /> 

    标签格式:<标签名 属性名="属性值" >数据</标签名>
        <标签名 属性名="属性值"  />\
    ----------------
    常见标签:
    1,字体: <font>
    <font size="7" color="#ffff00">数据</font>
    特殊部分:如果要在页面显示一些特殊符号,需要进行转义.
    <: &lt;  >:&gt; &:&amp; 空格:&nbsp; 
    标题:<h1> <h2> <h3>.......<h6>

    //<dl>标记定义了一个定义列表,定义列表中的条目是通过使用<dt>标记(“definition title”,定义标题)和<dd>标记(“definition description”,定义描述
    2,列表标签: <dl></dl>
        上层项目:<dt>
        下层项目:<dd>
        项目符号标签:
            <ul> 圆圈
            <ol> 数字
            这两个标签中的列表项都有<li>封装
            示例:
            1.游戏名称.
                a.星际
                b.红警
            2.游戏内容
                a.攻略
                b.秘籍

    3,图像标签:<img>
        <img src="" alt="图像说明文字" />
    4,表格标签: <table>
        表格由行所组成,行由单元格组成.
        表格中默认都有一个tbody标签 .
        标题标签:<caption>
        <table border="1" bordercolor="red" width=60% cellpadding="10" cellspacing ="0">
            <tr>
                <th></th> 居中 加粗
                <td></td>
            </tr>
            <tr>
                <td></td>
                <td></td>
            </tr>
        </table>
        表格是最常用的标签,用于对数据进行格式化.
    5,超链接:<a>
        <a href="http://www.sina.com.cn" target="_blank">新浪网站</a>

        当被点击后,会启动引擎所对应解析程序.
        去查找指定主机.
        1,先找本地主机的hosts文件.如果没有找到该主机对应的ip地址.
        2,去公网dns服务器上找对应的ip地址.

        <a href="mailto:abc@sohu.com?subject=haha&cc=qq@163.com" >联系我们</a>
        当点击超链接时,就会出现邮件相关联的解析程序,本机默认的是outlook.

        超链接的另一个作用:
        定位标记.(锚)
        <a name="top">一个位置</a>

        <a href="#top">获取那个位置</a>  //#就是1个位置

    6,表单标签:
        该标签是可以和服务端进行交互的.
        <form>
        表单标签中元素:
        <input>:该标签 因为type属性的值的不同,所对应的组件也不一样
        type属性:
            1,text:文本框,输入的文本可见.
            2,password:密码框,输入的文本不可见.
            3,radio:单选按钮(单选框),注意,要被选中,必须要给单选框定义一个属性name,当有多个单选框时,只能有一个被选中,那么这些单选框的name值必须相同.
            4,checkbox:多选框,当对多个数据进行同时选中时.
            5,file:可以进行文件选择 的软件 .通常用于附件,和文件上传.
            6,hidden:隐藏组件,该组件不会在页面 上显示,但是其定义的name和value可以提交到服务端.
            7,button:按钮组件,自定义一个按钮默认是没有任何效果的,可以通过注册事件并加入自定义效果.
            8,reset:重置按钮,将组件中被操作的效果还原到初始状态.
            9,submit:提交按钮,将组件中添加的提交到指定的目的地.
            10,image:图像组件,为了避免提交按钮的难看,可以通过image的src属性链接一个好看的按钮图片完成提交效果.

        下拉菜单:<select>
            每一个下拉菜单项都由option进行封装
            <select>
                <option></option>
            </select>

        文本区域:<textarea>

        表单组件通常都需要定义name和value属性,因为要将数据发送给服务端,服务端只有知道了该name的值才可以对提交的数据进行分别获取.

        form标签中的常见的属性:
        action:指定数据提交的目的地.method提交方式.两种常用值get和post. get为默认.

        get和post的区别:
        get:会将提交的数据显示在地址栏上.
        post:不会将数据显示在地址栏.

        get:提交的数据的体积受地址栏的限制.
        post:可以提交大体积的数据.

        get:对于敏感信息不安全.
        post:对于敏感信息安全.

        get:会将提交信息封装在请求行,也就是http消息头之前.
        post:会将提交信息封装在数据体,也就是http消息头之后的空行后

        对于服务端而言.
        表单提交尽量用post,因为涉及到编码问题. 因为tomcat服务端默认的解码是ISO8859-1
        对于post提交的中文.在服务端可以直接使用setCharacterEncoding("gbk")就可以解决
        对于get提交的中文,在服务端只能通过ISO8859-1将数据编码一次,再通过指定的码表如GBK解码

        使用表单的组件不一定要定义form标签.只有需要将数据进行服务端的提交的时候才会用到form标签

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值