jsday02补充(正则 标签复习回顾)

来源:互联网 发布:java和php 编辑:程序博客网 时间:2024/06/07 07:11

正则表达式
是一种专门用于操作字符串的规则
通过一些符号来表示 简化对字符串的复杂操作
弊端 阅读性较差
常见的操作
1、匹配 String matches(regex)
2、获取(查找) Pattern Matcher

Pattern p =Pattern.compile(regex);Matcher m = p.matcher(String);while(m.find()){    System.out.println(m.group());}

3、切割 String.split(regex);
4、替换String.replaceAll(regex,str);all才能通过正则替换

String regex="\\d(5,)";Pattern p =Pattern.compile(regex);Matcher m = p.matcher(String);while(m.find()){    String s= m.group();    s.replaceAll(regex,"#");}

网页爬虫 通过网络以及io读取网页的源文件 并通过规则获取网页中的符合规则的数据 比如email爬虫

String mailreg="[a-zA-Z0-9_]{6,12}@[a-zA-Z0-9]+(\\.[a-zA-Z]+)+";正则表达式中组的含义 将部分进行封装以便重用 \\num 反向引用指定组

html 超文本标记语言
html语言中是由标签组成的
html数据都会封装在标签当中 因为可以通过标签中的属性值的改变对封装内数据进行操作
确定html代码范围 <html></html>
在该范围中可以定义两部分内容一部分是头 一部分是体

<html>    <head></head>    <body></body><html>

head 网页的一些属性信息 比如标题
body网页显示的数据
标签特点 对于数据进行封装 那么就有开始标签和结束标签
但是也有一些标签只体现单一功能所以不需要结束标签 规范中要求标签必须要结束 所以这样的标签在内部结束
<br/> <hr/> <img/><input/>
标签格式 <标签名 属性名=”属性值”>数据

<font><font size="7" color="#ff0000">数据</font> 去好看的网站抓取

如果要在页面显示一些特殊符号 需要进行转义
<: &lt >:&gt & :&amp 空格 :&nbsp 再加个封号
标题<h1><h2>...<h6>
列表标签 <dl></dl>
上层项目<dt>Top
下层项目<dd> down
项目符号标签<ul> <ol> ul圆点 ol数字 这两个标签中的列表项都由li标签封装
事例

  1. 1
    • 黑色
    • 白色
  2. 2
    1. 如果

<ol>        <li>1</li>            <ul>                <li>黑色</li>                <li>白色</li>            </ul>        <li>2</li>            <ol type="a">                <li>如果</li>                <li></li>            </ol>    </ol>

3、图像标签<img>
<img src= "" alt="图像说明文字">可以高宽指定也可以弄个边框
4、表格标签<table>
表格由行组成行由单元格组成
表格中默认都有一个tbody标签 是td 不是tb 行中列数据






火狐 火狐


 <table  border="1" width="70%" cellpadding="10 " 表格数据离表格间的距离cellspacing="0" 表格中数据的距离>        <tbody>            <tr >                <td>火狐</td>                <td>火狐</td>            </tr>      </tbody>    </table>

表格是最常用的标签 用于对数据进行格式化
5、超链接
百度
<a href="http://www.baidu.com" target="_blank" title="这是什么属性呢?">百度</a>
需要协议才能解析 即http 不然找的是本地文件 可以用title显示全部标题
当被点击后会启动引擎所对应的解析程序 去查找指定的主机
1、先找本地主机的hosts文件 如果没有找到该主机的对应的ip地址
2、去公网dns服务器上找对应的ip地址 dos查看所有ip ipconfig/all

<a href="mailto:abc@sohu.com?subject=haha&cc=qq@163.com"> 联系我们</a>

当点击超链接时就会出现邮件相关联的解析程序 本机默认的是outlook
超链接的另一个作用
定位标记
一个位置
回到那个位置 #告诉浏览器是一个位置
6、表单标签
该标签是可以和服务端进行交互的

<form>表单标签中元素<input> 该标签因为type属性值的不同所对应的组建也不一样type属性1、text 文本框 输入的文本可见2、password 密码框 输入的文本不可见3、radio 单选框 注意的是 要被选中 必须要给单选框定义一个属性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>

文本区域
表单组件 通常都需要定义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标签
比如一些性格测试 只要你点就会返回结果 不需要同服务端进行交互

原创粉丝点击