1、正则框架
import@H_404_4@ re
pattern = re.compile(r'he(.+?)lo'@H_404_4@);#正则表达式@H_404_4@
match = pattern.match('helfdslo my sfsdfsdon'@H_404_4@);#目标字符串@H_404_4@
#输出内容@H_404_4@
if@H_404_4@ match:
print@H_404_4@ match.group(1@H_404_4@)
2、匹配整数
整数的正则表达式是\d+,其中\d表示整数,+表示多个
# -*- coding: utf-8 -*-@H_404_4@
import@H_404_4@ re
pattern = re.compile('\d+'@H_404_4@);#正则表达式@H_404_4@
print@H_404_4@ re.findall(pattern,"jiang32jianfs fs fs232 gfsd3"@H_404_4@)
2、根据前后匹配任意字符串
# -*- coding: utf-8 -*-@H_404_4@
import@H_404_4@ re
pattern = re.compile('item(.*),'@H_404_4@);#正则表达式@H_404_4@
print@H_404_4@ re.findall(pattern,"jiang32jianfs fsitemddfd,fs232 gfsd3"@H_404_4@)
.表示任意字符串。
*表示一个或者多个
?表示一个
+表示一个以上
3、多个正则匹配
# -*- coding: utf-8 -*-@H_404_4@
import@H_404_4@ re
pattern = re.compile('a=(\d+).*,b=(\d+),"a=12,fsdfsdfsdfsdfsdfsd,b=12,fdsfsd."@H_404_4@)
其中.*表示过滤其中的所有字符,直到匹配到第二个正则表达式为止。
4、读取并输出
import@H_404_4@ re
f = open('/Users/jianghuiwen/item.txt'@H_404_4@,'r'@H_404_4@);
for@H_404_4@ line in@H_404_4@ f:
#print line@H_404_4@
pattern = re.compile('ItemAttr=(.*),itemCnt.*\[(\d+)\]'@H_404_4@);#正则表达式@H_404_4@
r = re.findall(pattern,line)
if@H_404_4@ len(r):
print@H_404_4@ r[0@H_404_4@][0@H_404_4@] + r[0@H_404_4@][1@H_404_4@]