1、你要测试是否匹配多个,应该用findall,而不是search,search只找第一个匹配的。
2、\d{8} 你写成了d{8}
3、{6}是精确6位,{6,}才会匹配到8位的12345678
Python执行Linux系统命令,即在Python脚本中调用Shell命令,具体有以下四种方法:1、os.system
//仅仅在一个子终端运行系统命令,而不能获取命令执行后的返回信息
system(command) ->exit_status
Execute the command (a string) in a subshell.
//如果再命令行下执行,结果直接打印出来:
>>>os.system('ls')
04101419778.CHM bash documentmedia py-django video
11.wmvbooks downloads Pictures python
all-20061022 Desktop Examplesprojecttools
2、os.popen
//该方法不但执行命令还返回执行后的信息对象
popen(command [, mode='r' [, bufsize]]) ->pipe
Open a pipe to/from a command returning a file object.
3、使用模块 subprocess
>>>import subprocess
>>>subprocess.call(["cmd", "arg1", "arg2"],shell=True)
//获取返回和输出:
import subprocess
p = subprocess.Popen('ls', shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
for line in p.stdout.readlines():
print line,
retval = p.wait()
4、使用模块 commands
>>>import commands
>>>dir(commands)
['__all__', '__builtins__', '__doc__', '__file__', '__name__', 'getoutput', 'getstatus','getstatusoutput', 'mk2arg', 'mkarg']
>>>commands.getoutput("date")
'Wed Jun 10 19:39:57 CST 2009'
>>>
>>>commands.getstatusoutput("date")
(0, 'Wed Jun 10 19:40:41 CST 2009')