perl 到 python 转换
perl to python transition
我正在尝试解析具有以下格式的 flie:
file.txt
10.202.34.35 username password
10.202.34.36 username password
在 perl 中,我可以使用诸如
之类的正则表达式来完成
m/^(\d{1-3}.\d{1-3}.\d{1-3}.\d{1-3})\s(\w+)\s(\w+)/ then $ip = ; $username = ; $password =
如何在 python 中复制它?提前致谢。
为什么你需要在这里使用正则表达式??
尝试split
:
with open('file.txt') as f:
for x in f:
ip, username, password = x.strip().split()
# do your stuff with variables now
这是一个更正后的正则表达式(没有 Amadan 在评论中提到的错误):
import fileinput
import re
pattern = '(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\s(\w+)\s(\w+)'
for line in fileinput.input():
matches = re.match(pattern, line)
if matches:
ip, username, password = matches.groups()
print ip, username, password
我正在尝试解析具有以下格式的 flie:
file.txt
10.202.34.35 username password
10.202.34.36 username password
在 perl 中,我可以使用诸如
之类的正则表达式来完成m/^(\d{1-3}.\d{1-3}.\d{1-3}.\d{1-3})\s(\w+)\s(\w+)/ then $ip = ; $username = ; $password =
如何在 python 中复制它?提前致谢。
为什么你需要在这里使用正则表达式??
尝试split
:
with open('file.txt') as f:
for x in f:
ip, username, password = x.strip().split()
# do your stuff with variables now
这是一个更正后的正则表达式(没有 Amadan 在评论中提到的错误):
import fileinput
import re
pattern = '(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\s(\w+)\s(\w+)'
for line in fileinput.input():
matches = re.match(pattern, line)
if matches:
ip, username, password = matches.groups()
print ip, username, password