全部博文(2065)
分类: Python/Ruby
2010-02-08 23:22:00
常用正则表达式处理代码专题----python(V1.0)
[整理人:hkebao@126.com 整理时间:
一、数字相关
1.1
非负整数
import re
nStr = "123"
p = re.compile('^\d+$',re.S) 非负整数(正整数与零)
if p.match(nStr):
print "exists"
else:
print "not"
1.2
正整数
import re
nStr = "123"
p = re.compile('^[0-9]*[1-9][0-9]*$',re.S) 正整数(不包括零在内)
if p.match(nStr):
print "exists"
else:
print "not"
1.3
非正整数(负整数+0)
import re
nStr = "-123"
p = re.compile('^((-\d+)|(0+))$',re.S)
if p.match(nStr):
print "exists"
else:
print "not"
1.4
负整数
import re
nStr = "-123"
p = re.compile('^-[0-9]*[1-9][0-9]*$',re.S)
if p.match(nStr):
print "exists"
else:
print "not"
1.5 整数
import re
nStr = "123"
p = re.compile('^-?\d+$',re.S)
if p.match(nStr):
print "exists"
else:
print "not"
1.6 非负浮点数(正浮点数 + 0)
import re
nStr = "0.123"
p = re.compile('^\d+(\.\d+)?$',re.S)
if p.match(nStr):
print "exists"
else:
print "not"
1.7 正浮点数
import re
nStr = "0.123"
p = re.compile('^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$',re.S)
if p.match(nStr):
print "exists"
else:
print "not"
1.8 非正浮点数(负浮点数 + 0)
import re
nStr = "-0.123"
p = re.compile('^((-\d+(\.\d+)?)|(0+(\.0+)?))$',re.S)
if p.match(nStr):
print "exists"
else:
print "not"
1.9 浮点数
import re
nStr = "-0.123"
p = re.compile('^(-?\d+)(\.\d+)?$',re.S)
if p.match(nStr):
print "exists"
else:
print "not"
二、字符相关
2.1 26个英文字母组成的字符串
import re
nStr = "abck"
p =
re.compile('^[A-Za-z]+$',re.S)
if p.match(nStr):
print "exists"
else:
print "not"
如果是大写的话就是:^[A-Z]+$
如果是小写的话就是:^[a-z]+$
如果是数字与字母组合:^[A-Za-z0-9]+$
如果由数字、26个字母、或下划线组成的:^\w+$
三、HTML相关
3.1 匹配标签的
#coding:utf-8
import re
nStr = ""
p = re.compile('<\s*script[^>]*>[^<]*<\s*/\s*script\s*>',re.I)
if p.match(nStr):
print "exists"
else:
print "not"
3.2 匹配标签
#coding:utf-8
import re
nStr = ""
p = re.compile('<\s*style[^>]*>[^<]*<\s*/\s*style\s*>',re.I)
if p.match(nStr):
print "exists"
else:
print "not"
3.3 匹配HTML标签
#coding:utf-8
import re
nStr = " p = re.compile('?\w+[^>]*>',re.I) if p.match(nStr): print "exists" 输出 else: print "not" 四、URL相关 4.1 匹配EMAIL地址 import re nStr = "hkebao@126.com" p = re.compile('^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$',re.S) if p.match(nStr): print "exists" else: print "not" 4.2 匹配URL import re nStr =
"" p =
re.compile('^[a-zA-z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$',re.S) if p.match(nStr): print "exists" else:
print "not" 五、其他