正则表达式 回顾 & 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>
特殊部分:如果要在页面显示一些特殊符号,需要进行转义.
<: < >:> &:& 空格:
标题:<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标签
正则表达式 回顾 & HTML 回顾
最新推荐文章于 2024-08-08 23:24:32 发布