HTML常见标签与正则表达式
HTML中的常见标签
-
-
常用标签
-
列表标签
-
表格标签
-
表单标签
-
大于号>: >
小于号 <: <

and符 &: &

羊角符¥ ¥

商标符 ®

版权符©
常用标签:
a标签:
<a href="https://www.baidu.com">链接标签</a>
链接标签

img标签
<img src="图片地址" alt="">
图片标签 图片可以是网络也可以是本地

div标签
<div>页面布局标签</div> 内部可以无限嵌套任意标签

span标签
<span>页面文本标签</span>
所有网页中涉及到文字可能会出现的标签

列表标签:
由<ul> 和<li>组合而成 可以横向或者竖向排列


表格标签:
<table> <thead> <tr> <th>姓名</th> <th>年龄</th> <th>性别</th> </tr> </thead> <tbody> <tr> <td>max</td> <td>19</td> <td>男</td> </tr> </tbody> </table>

表单标签:
当涉及到用户数据获取的时候需要使用表单标签
text 文本 email 邮箱格式 date 日期格式

password 密文展示

radio 单选

checkbox 多选

file 文件

submit 提交按钮 reset 重置按钮 value自定义按钮
select标签 option子标签 下拉框单选

textarea标签 获取大段文本
<a id='' class=''></a>
上述id、class等都称之为a标签的属性
id:类似于标签的身份证号码 用于唯一标识标签在同一个html文档中id不能重复
class:标签的种类,用于区分不同的类
<p class='c1'></p> <a class='c1'></a> <div class='c1'></div> 一个标签可以含有多个class值 <span class='c1 c2 c3'></span>
相当于 id 是查找一个标签 class 是查找一群人
一个标签也可以含有多个class值 <span class='c1 c2 c3'></span>
标签还可以自定义任意属性
标签之间的关系描述
<div>只要是div内部的标签都可以称之为是div的后代 <a>上一级div的儿子</a> <p>上一级div的儿子 <span>上一级p的儿上上一级div的孙子</span> </p> <div>上一级div的儿 <a>上一级div的儿子上上一级div的孙子</a> </div> <span>上一级div的儿</span> </div>
正则表达式
使用正则表达式可以极大的简化数据筛选和校验的步骤
同样一个手机号校验 如果用python代码写
# 1.获取用户手机号 phone = input('phone num>>>:').strip() # 2.先判断长度是否是11位 if len(phone) == 11: # 3.再判断是否是纯数字 if phone.isdigit(): # 4.最后判断开头是否是13 14 15 18 if phone.startswith('13') or phone.startswith('14') or phone.startswith('15') or phone.startswith('18'): print('是一个合法的手机号') else: print('手机号格式错误') else: print('手机号必须是纯数字') else: print('手机号必须是11位')
如果用正则表达式:
import re phone_number = input('please input your phone number : ') if re.match('^(13|14|15|18)[0-9]{9}$',phone_number): print('是合法的手机号码') else: print('不是合法的手机号码'
[0123456789] 匹配0到9之间的任意一个数字包括首尾 [0-9] 简写:匹配0到9之间的任意一个数字包括首尾 [a-z] 匹配小写字母a到z之间的任意一个字母包括首尾 [A-Z] 匹配大写字母A到Z之间的任意一个字母包括首尾 [0-9a-zA-Z] 匹配数字或者小写字母或者大写字母



# 符号在匹配内容的时候是单个单个字符挨个匹配 . 匹配除换行符以外的任意字符(只能匹配一个字符) \d 匹配数字 ^ 匹配字符串的开始 $ 匹配字符串的结尾 a|b 匹配字符a或字符b () 给正则表达式分组 本身没有任何意义 [...] 匹配字符组中的字符 [^...] 匹配除了字符组中字符的所有字符(取反)
^a 意思就是匹配首位a的字符
f$ 意思就是匹配末尾f的字符
14|15|16 匹配 14 或15或16的字符
正则表达式之量词
# 跟在正则表达式的后面可以一次性匹配多个字符 '''量词必须跟在正则表达式后面 不能单独出现使用''' * 重复零次或更多次 + 重复一次或更多次 ? 重复零次或一次 {n} 重复n次 {n,} 重复n次或更多次 {n,m} 重复n到m次 """正则表达式默认情况下都是贪婪匹配>>>:尽可能多的匹配""" 正则 待匹配的文本 结果 海. 海燕海娇海东 三个结果 海燕、海娇、海东 ^海. 海燕海娇海东 一个结果 海燕 海.$ 海燕海娇海东 一个结果 海东 海.* 海燕海娇海东 一个结果 海燕海娇海东
李.? 李杰和李莲英和李二棍子 李杰 李莲 李二 # 问号表示零次或一次 默认贪婪即一次 其实就是正则表达式本身的一次 李.* 李杰和李莲英和李二棍子 李杰和李莲英和李二棍子 李.+ 李杰和李莲英和李二棍子 李杰和李莲英和李二棍子 李.{1,2} 李杰和李莲英和李二棍子 李杰和 李莲英 李二棍 """贪婪匹配与非贪婪匹配""" <.*> <script>123</script> <script>123</script> 右侧尽可能多的匹配大括号最后一个才停止 # 将贪婪匹配变成非贪婪匹配只需要在量词后面加一个问号即可 <.*?> <script>123</script> 右侧遇到一个大括号就停止匹配
\n 匹配的是换行符
\\n 匹配的是\n
\\\\n 匹配的是\\n
内置模块
re模块
import re text = '<script>123</script>' res = re.findall('<.*?>',text) print(res)




浙公网安备 33010602011771号