python-正则表达式

1、什么是正则表达式
用某种字符串表达式制定一个规则,可以实现字符串的模糊匹配
2、正则表达式的用途
1>分析日志,统计
2>数据处理,替换、数据提取、删除等
3>过滤敏感词
3、正则表达式的模块:re
1>如果想写一个\时,前面必须加r,否则需要写两个\;
    p=re.compile()是对正则表达式进行编译,编译成了一个正则表达式的对象;
    \d是代表1个数字,\d+是一个或多个数字;
2>p.match(),用正则表达式(p)去匹配“123abc”字符串的开头是否有一个或多个数字,
   如果匹配到了,则会把匹配的内容存入变量里,我们可以调用,如:print p.match(“123abc”).group(),匹配的内容是123;
   如果没有匹配到,print p.match("abc"),则会打印None
   print p.match("abc").group(),则报错:
4、“\D”是匹配非数字
正则表达式p.pattern可以返回匹配的是什么格式
5.search是在整个字符串做搜索
6.\w-->数字或字母
   \w+--->一个或多个数字(字母、下划线)
   \W(大写)---->非数字且非字母
    \W+-------->一个或多个非数字且非字母
 
也可以这样写re.search("规则",“匹配的字符串”).group()
7"\s"返回的是space,即空白
“\S”返回的是非space,即非空白
8.findall()找到全部的匹配到的字符
9、.可以匹配除了换行所有的字符
10、h*可以匹配0个或多个h字符
 
练习:英文一个句子,用正则表达式统计一下有几个单词
#encoding=utf-8
import re
a=raw_input("please input aenglish sentence!")
b=re.findall(r"\s",a)
print len(b)+1
 
输出结果:
>>> 
==================== RESTART: C:\Users\ASUS\Desktop\q.py ====================
please input aenglish sentence:we are my family!
4
>>> 
==================== RESTART: C:\Users\ASUS\Desktop\q.py ====================
please input aenglish sentence:please you put your hand on the desk!
8
>>> 
 
 
 
 

posted on 2017-07-15 19:59  老样子  阅读(185)  评论(0编辑  收藏  举报

导航