Python模块学习------ 正则表达式
import re
#f = open('data.txt','r')
#for eachline in f.readlines():
#print re.split('\s\s+', eachline) ## !/usr/bin/env python from random import randint, choice
from string import lowercase
from sys import maxint
from time import ctime doms = ('com', 'edu', 'net', 'org', 'gov') for i in range(randint(5, 10)):
dtint = randint(0, maxint -1)
dtstr = ctime(dtint) shorter = randint (4,7)
em = ''
for j in range(shorter):
em += choice(lowercase) longer = randint (shorter, 12)
dn = ''
for j in range(longer):
dn += choice(lowercase) print "%s::%s@%s.%s::%d-%d-%d" % (dtstr, em, dn, choice(doms), dtint, shorter, longer)
运行结果:
Sat Mar 13 01:58:52 2032::cdrnpl@spvxjivzlzux.net::1962727132-6-12
Wed May 17 00:02:49 2034::cvyyd@nrfry.net::2031408169-5-5
Mon Oct 04 00:23:55 2004::zvkxrhv@fwbdncrl.org::1096820635-7-8
Sat Feb 16 01:46:48 2013::lgkzuz@fvratahza.edu::1360950408-6-9
Fri Aug 13 02:20:00 1976::dvsptdy@szsfeub.edu::208722000-7-7
Sun Dec 01 04:54:59 1991::oqdoh@dcuqagr.gov::691534499-5-7
Thu Oct 11 01:32:08 1990::qaoevt@kvbjqd.edu::655579928-6-6
Tue Aug 04 04:33:58 2009::jnejg@jmzwb.gov::1249331638-5-5
Sun Jul 20 08:11:48 2003::nuohl@svtgnn.net::1058659908-5-6
Tue May 29 12:09:07 2001::pgfzf@segsnmusti.net::991109347-5-10
import re
data = 'Mon May 18 01:40:03 2020::mkxvej@pbhhwbxzgk.edu::1589737203-6-10'
patt1 = '^(Mon|Tue|Wed|Thu|Fri|Sat|Sun)'
s_patt = '-(\d)-'
s_search = re.search(s_patt, data)
print s_search.group()
m_patt_0 = '.+(\d+-\d+-\d+)'
m_match_0 = re.match(m_patt_0, data)
print m_match_0.group(1)
m_patt = '.+?(\d+-\d+-\d+)'
m_match = re.match(m_patt, data)
print m_match.group(1)
“非贪婪”操作符“?”, 可以用在“*”、“+”、“?”的后面。可以使正则表达式引擎匹配的字符越少越好。
运行结果:
-6-
3-6-10
1589737203-6-10
Python模块学习------ 正则表达式的更多相关文章
- 【转】Python模块学习 - fnmatch & glob
[转]Python模块学习 - fnmatch & glob 介绍 fnmatch 和 glob 模块都是用来做字符串匹配文件名的标准库. fnmatch模块 大部分情况下使用字符串匹配查找特 ...
- 【目录】Python模块学习系列
目录:Python模块学习笔记 1.Python模块学习 - Paramiko - 主机管理 2.Python模块学习 - Fileinput - 读取文件 3.Python模块学习 - Confi ...
- Python模块学习filecmp文件比较
Python模块学习filecmp文件比较 filecmp模块用于比较文件及文件夹的内容,它是一个轻量级的工具,使用非常简单.python标准库还提供了difflib模块用于比较文件的内容.关于dif ...
- Python 模块学习:re模块
今天学习了Python中有关正则表达式的知识.关于正则表达式的语法,不作过多解释,网上有许多学习的资料.这里主要介绍Python中常用的正则表达式处理函数. 方法/属性 作用 match() 决定 R ...
- python模块学习第 0000 题
将你的 QQ 头像(或者微博头像)右上角加上红色的数字,类似于微信未读信息数量那种提示效果. 类似于图中效果: 好可爱>%<! 题目来源:https://github.com/Yixiao ...
- Python模块学习:logging 日志记录
原文出处: DarkBull 许多应用程序中都会有日志模块,用于记录系统在运行过程中的一些关键信息,以便于对系统的运行状况进行跟踪.在.NET平台中,有非常著名的第三方开源日志组件log4net ...
- 解惑Python模块学习,该如何着手操作...
Python模块 晚上和朋友聊天,说到公司要求精兵计划,全员都要有编程能力.然后C.Java.Python-对于零基础入门的,当然是选择Python的人较多了.可朋友说他只是看了简单的语法,可pyth ...
- Python模块学习
6. Modules If you quit from the Python interpreter and enter it again, the definitions you have made ...
- Python模块学习系列
python模块-time python模块-datetime python模块-OS模块详解
随机推荐
- Java内存管理(一)
好久没有写博客了,深感羞愧,今天聊一下Java的内存管理 简单介绍 Java相比传统语言(C,C++)的一个优势在于其能够自己主动管理内存.从而将开发人员管理内存任务剥离开来. 本文大体描写叙述了J2 ...
- HDU 1908 Double Queue(set)
Problem Description The new founded Balkan Investment Group Bank (BIG-Bank) opened a new office in B ...
- Android Static分析
1.static的变量或者方法会放在内存的一个方法区内 2.static变量会在该变量所属的类从内存中释放掉之后. 才会释放掉而类释放的条件是非常苛刻的. 必需要该类相应的全部对象被释放掉. 同一时候 ...
- ASP.NET Core 使用 Hangfire 定时任务
定时任务组件,除了 Hangfire 外,还有一个 Quarz.NET,不过 Hangfire .NET Core 支持的会更好些. ASP.NET Core 使用 Hangfire 很简单,首先,N ...
- shell脚本小案例
1.获取远程ftp数据到本地目录 #!/bin/bash ftp -n<<! open 135.0.24.19 user exchange exchange binary cd /idep ...
- Caused by: java.net.SocketException: Broken pipe
异常信息 时间:2017-03-24 17:22:16,719 - 级别:[ WARN] - 消息: [other] The web application [ROOT] appears to hav ...
- javascript中的双向绑定
阅读目录 一:发布订阅模式实现数据双向绑定 二:使用Object.defineProperty 来实现简单的双向绑定. 前言: 双向数据绑定的含义:可以将对象的属性绑定到UI,具体的说,我们有一个对象 ...
- 关于close和shutdown
我们知道TCP是全双工的,可以在接收数据的同时发送数据.假设有主机A在和主机B通信,可以认为是在两者之间存在两个管道.就像这样:A ---------> BA <--------- B 1 ...
- 【MySQL】数据库字段类型
1.数值型 整型 TINYINT SMALLINT MEDIUMINT INT BIGINT 浮点型 FLOAT(m,n) - m表示总位数,n表示小数位数. DOUBLE(m,n) DECIMAL( ...
- Noip2016换教室(期望+DP)
Description 题目链接:Luogu Solution 这题结合了DP和概率与期望,其实只要稍微知道什么是期望就可以了, 状态的构造很关键,\(F[i][j][0/1]\)表示已经到第\(i\ ...