blob: 11e598d80cd631c9f73dd2470e583127bae98ad3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
#!/usr/bin/python3
# Challenge 029
# Task #1
# Write a script to demonstrate brace expansion. For example, script would take
# command line argument Perl {Daily,Weekly,Monthly,Yearly} Challenge and should
# expand it and print like below:
#
# Perl Daily Challenge
# Perl Weekly Challenge
# Perl Monthly Challenge
# Perl Yearly Challenge
import sys
import re
def print_expanded(text):
mo = re.search(r"[{]([^{}]*?)[}]", text)
if mo:
before = text[:mo.start(0)]
expand = mo.group(1)
after = text[mo.end(0):]
for arg in expand.split(","):
print_expanded(before+arg+after)
else:
print(text)
print_expanded(" ".join(sys.argv[1:]))
|