字符串算是python 文本处理中用到的非常多的内容了,下面就对此总结下。
查找字符串
#!usr/bin/env
import re
import string
target = 'test.txt'
file = open(target)
keyword = 'help'
for line in file:
# 这一行的目的是为了查看,是否有从首位开始就与keyword匹配的字符串
if re.match(keyword, line.strip()) == None:
print line
else:
print 'yes'
# 这一行的目的是为了确认是否包含keyword,并不要求必须从首位开始
if line.find(keyword) > 0 or line.find(keyword) == 0:
print line
# text.txt
123
hello
123hello456
执行结果如下:
loop 1
123
loop 2
yes
hello
loop 3
123hello456
123hello456
查找固定格式字符串
比如需要查找下类似:
0x00 格式的字符串,长度不固定
import re
import string
strname = "hello 0x1234 world"
model = re.comple("0x\w+")
str1 = model.findall(strname)
if len(str1):
for i in str1:
value = int(str, 16)
print value
结果如下:
1234
去除字符串
ss = '\naabb cc,\n dd\n\n\n'
print ss.strip('\n')
print ss.lstrip('\n') #删除ss字符串开头处的指定字符,
print ss.rstrip('\n') #删除ss结尾处的指定字符
print ss.replace('\n', '')
aabb cc,\n dd
aabb cc,\n dd\n\n\n
\naabb cc,\n dd
aabb cc,dd
注意: string.strip()参数为空时,默认去除ss字符串中头尾\r, \t, \n, 空格等字符
字符串转数字
int(str, base)
比如上列中的:
int(str, 16) 转化成16进制的数字.