#/usr/bin/python
#coding=utf-8
#@Time   :2017/11/18 18:24
#@Auther :liuzhenchuan
#@File   :re的split findall  finditer 方法.py
import re
 
#re.compile 将正则表达式编译成对象
#split() 方法,是分割
p = re.compile(r'\d+')
a_str = 'one1two2three3foure4'
 
#把p的正则当成分隔符,把字符串用p进行割,最后返回
print p.split('one1two2three3foure4')
 
#使用正则匹配分隔字符串
print p.split(a_str)
 
print '###'*30 + '\n'
#以空白字符进行分隔
m = re.compile(r'\s+')
print m.split('123 456 7890 890')
 
# #以非单词进行分隔
n = re.compile(r'\W+')
print n.split('1234**4567P890**op')
 
print '###'*30 + '\n'
##正则对象findall() ,来查找符合对象的字符串.以列表的形式返回
print '查找符合纯数字的'
p = re.compile(r'\d+')
a_str = 'one1two2three3foure4'
print p.findall(a_str)
print '###'*5 + '\n'
 
print 'finditer()方法'
#finditer()方法,finditer可迭代的对象,可迭代的方法比findall方法好
for i in p.finditer(a_str):
    print i.group()
 
>>>
###############以数字\d进行分隔###############
['one', 'two', 'three', 'foure', '']
['one', 'two', 'three', 'foure', '']
##########################################################################################
 
###############以空白字符\s进行分隔###############
['123', '456', '7890', '890']
###############以非单词串进行分隔###############
['1234', '4567P890', 'op']
##########################################################################################
 
查找符合纯数字的
['1', '2', '3', '4']
###############
 
finditer()方法
1
2
3
4
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

最新文章

  1. Web网站中利用JavaScript中ActiveXObject对象获取硬件信息(显示器数量、分辨率)从而进行单双屏跳转
  2. 在活动中使用Menu
  3. Android 监听返回键、HOME键
  4. 转-Nmap扫描原理与用法
  5. Trie字典树 静态内存
  6. Repository
  7. 实验一 操作系统模仿cmd
  8. 关于JAVA中URL传递中文参数,取值是乱码的解决办法
  9. [Swift]LeetCode859. 亲密字符串 | Buddy Strings
  10. HDU - 6393 Traffic Network in Numazu(树链剖分+基环树)
  11. unknow Unknown type name 'NSString'
  12. kafka的迁移干货
  13. JavaScript深度克隆
  14. sam9260 闲鱼
  15. es6 let关键字
  16. Python学习1-Python和Pycharm的下载与安装
  17. html精灵技术(用来显示图片的某个区域)
  18. 10JavaScript作用域
  19. django中ImageField模块使用
  20. struts2学习笔记(二)—— struts2的架构【转】

热门文章

  1. java 修改字体大小
  2. bitmap自己项目中处理遇到的问题
  3. Codeforces 371E Subway Innovation (前缀和预处理应用)
  4. Unique Binary Search Trees II - LeetCode
  5. 【Objective-C Runtime动态加载】---动态创建类Class
  6. Android Actionbar 添加返回按钮
  7. C# DBHelper类
  8. Zookeeper协调分布式节点demo
  9. 【温故知新】——原生js中常用的四种循环方式
  10. 2016.6.20 maven下载与安装步骤