题目描述
在命令行输入如下命令:
xcopy /s c:\ d:\,
各个参数如下:
参数1:命令字xcopy
参数2:字符串/s
参数3:字符串c:\
参数4: 字符串d:\
请编写一个参数解析程序,实现将命令行各个参数解析出来。
解析规则:
1.参数分隔符为空格
2.对于用""包含起来的参数,如果中间有空格,不能解析为多个参数。比如在命令行输入xcopy /s “C:\program files” "d:“时,参数仍然是4个,第3个参数应该是字符串C:\program files,而不是C:\program,注意输出参数时,需要将”"去掉,引号不存在嵌套情况。
3.参数不定长
4.输入由用例保证,不会出现不符合要求的输入
代码
while True:
try:
a = input().split()
b = []
i = 0
while i < len(a):
if a[i][0] != '"':
b.append(a[i])
else:
if a[i][-1] == '"':
b.append(a[i][1:-1])
else:
j = a[i][1:] + ' '
while a[i+1][-1] != '"':
i += 1
j += a[i] + ' '
j += a[i+1][:-1]
b.append(j)
i += 1
i += 1
print(len(b))
for i in range(len(b)):
print(b[i])
except:
break