【发布时间】:2017-06-22 03:26:06
【问题描述】:
以下输入文件有:
info:pens-10-books-10,pens-10-books-20
我正在使用下面的 python 字典读取这个输入文件。
d = {}
with open('inputfile.txt') as f:
for line in f:
if ":" not in line:
continue
key, value = line.strip().split(":", 1)
d[key] = value
for key, value in d.iteritems():
if key == 'info':
goods = value.split(",")
现在我需要帮助来验证所提供的输入。商品申报为清单,因此我需要验证清单值。
第一个八位位组必须是字母,第二个八位位组必须是数字,第三个八位位组必须是字母表,第四个八位位组必须是数字。如果包含超过 4 个八位字节,则无效输入。下面是例子
pens-10-books-10 --input valid
apples-1-cakes-10 --input valid
10-aplpes-10cakes --not valid input (as number contains at first octet)
pens-10-books-20-apples-10 -- not valid input (more than 4 octets)
【问题讨论】:
-
您只是在寻找正则表达式解决方案吗?
-
@open-source 可能不是,但正则表达式似乎是这里最好和最简单的选择。
标签: python regex python-2.7 validation