正则表达式

一.正则表达式

所有的模块都要经历两个步骤:

(1)要操作的概念本身           正则表达式                    时间

(2)使用模块去操作它                re                             time

1.什么是正则表达式

一种可以匹配字符串的规则(只能匹配字符串)

2.正则表达式可以做什么?

(1)可以制定一个规则:

  ①来确定某一个字符串是否负责规则

  ②从大段的字符串中找到符合规则的内容

(2)程序领域

  ①登录注册的表单验证(web开发,要求简单语法)

  ②爬虫(把这个网页的源码拿到,并可以从源码中获取有效的信息,并进行数据分析)

  ③自动化开发(日志分析)

3.正则表达式的语法

(1)字符组

字符:

"."       匹配除换行符以外的任意字符,一个字符

"\w"       匹配字母或数字或下划线,一个字符

"\s"          匹配任意的空白符(回车,空格,制表符),一个字符

"\d"==[0-9]     匹配数字,一个字符

"\n"       匹配一个换行符

 "\t"       匹配一个制表符

"\b"      匹配一个单词(包括字母.数字,下划线,特殊符号)的结尾

"^"      匹配字符串的开始

"$"      匹配字符串的结尾

"\W"      匹配非字母或数字或下划线

"\D"      匹配非数字

"\S"      匹配非空白符 (回车,空格,制表符)

"a|b"      匹配字符a或者字符b

"()"      匹配括号内的表达式,也表示一个组

"[...]"      匹配字符组中的字符

"[^...]"     匹配除了字符组中的字符的所有字符


(2)量词

 


 

(3)字符集 [] [^]

 


 

(4)分组()或| [^] 

 


 

(5)转义符 \


(6)贪婪匹配

 

 


(7)特殊的用法和现象

?的使用:

  ①在量词的后面跟了一个?,取消贪婪匹配,则是惰性模式

最常用的 .*?x 匹配任意字符直到找到x    (x是一个字符)

总结:

(1)元字符

(2)元字符 量词     贪婪匹配

(3)元字符 量词 ?   惰性匹配

 

posted @ 2018-08-06 21:59  Sunny_l  阅读(198)  评论(0编辑  收藏  举报