import re

import sys

with open(sys.argv[1], 'r') as myfile:
    string=myfile.read()
abc_file = open(sys.argv[1]+'_replaced.txt', 'w')

#print string
listall = re.findall(r'\[\w*\^?\w*\]\,{3}\d', string, flags=0)
for occur in listall:
    print occur
    str = occur.split("]")
    list_str = list(str[0])
    replace="["
    for char in list_str:
        if char not in ["[","^"]:
            replace += char + str[1]
        if char == "^":
            replace +="^"
    replace+="]"
    string = string.replace(occur, replace)
#print string
listall = re.findall(r'\[\w*\^?\w*\]\,{2}\d', string, flags=0)
for occur in listall:
    print occur
    str = occur.split("]")
    list_str = list(str[0])
    replace="["
    for char in list_str:
        if char not in ["[","^"]:
            replace += char + str[1]
        if char == "^":
            replace +="^"
    replace+="]"
    string = string.replace(occur, replace)
#print string
listall = re.findall(r'\[\w*\^?\w*\]\,{1}\d', string, flags=0)
for occur in listall:
    print occur
    str = occur.split("]")
    list_str = list(str[0])
    replace="["
    for char in list_str:
        if char not in ["[","^"]:
            replace += char + str[1]
        if char == "^":
            replace +="^"
    replace+="]"
    string = string.replace(occur, replace)
#print string
listall = re.findall(r'\[\w*\^?\w*\]\d', string, flags=0)
for occur in listall:
    print occur
    str = occur.split("]")
    list_str = list(str[0])
    replace="["
    for char in list_str:
        if char not in ["[","^"]:
            replace += char + str[1]
        if char == "^":
            replace +="^"
    replace+="]"
    string = string.replace(occur, replace)
#print string
listall = re.findall(r'\[\w*\^?\w*\]\,{3}', string, flags=0)
for occur in listall:
    print occur
    str = occur.split("]")
    list_str = list(str[0])
    replace="["
    for char in list_str:
        if char not in ["[","^"]:
            replace += char + str[1]
        if char == "^":
            replace +="^"
    replace+="]"
    string = string.replace(occur, replace)
#print string
listall = re.findall(r'\[\w*\^?\w*\]\,{2}', string, flags=0)
for occur in listall:
    print occur
    str = occur.split("]")
    list_str = list(str[0])
    replace="["
    for char in list_str:
        if char not in ["[","^"]:
            replace += char + str[1]
        if char == "^":
            replace +="^"
    replace+="]"
    string = string.replace(occur, replace)
#print string
listall = re.findall(r'\[\w*\^?\w*\]\,{1}', string, flags=0)
for occur in listall:
    print occur
    str = occur.split("]")
    list_str = list(str[0])
    replace="["
    for char in list_str:
        if char not in ["[","^"]:
            replace += char + str[1]
        if char == "^":
            replace +="^"
    replace+="]"
    string = string.replace(occur, replace)
#print string
abc_file.write(string)
#
#
# for i in range(1,500):
#     listall = re.findall(r'\[\w*\^?\w*\],{1,3}\d', string, flags=0)
#     if len(listall):
#         find = re.search(r'\[\w*\^?\w*\],{1,3}\d', string, flags=0)
#         find_group = find.group(0)
#         str = find.group(0).split("]")
#         list_str = list(str[0])
#         replace="["
#         for char in list_str:
#             if char not in ["[","^"]:
#                 replace += char + str[1]
#             if char == "^":
#                 replace +="^"
#         replace+="]"
#         string = string.replace(find_group, replace)
#     else:
#         break
# print string
# for j in range(1,500):
#     listall = re.findall(r'\[\w*\^?\w*\]\,+', string, flags=0)
#     if len(listall):
#         find = re.search(r'\[\w*\^?\w*\]\,+', string, flags=0)
#         find_group = find.group(0)
#         str = find.group(0).split("]")
#         list_str = list(str[0])
#         replace="["
#         for char in list_str:
#             if char not in ["[","^"]:
#                 replace += char + str[1]
#             if char == "^":
#                 replace +="^"
#         replace+="]"
#         string = string.replace(find_group, replace)
#     else:
#         break
# print string
# for m in range(1,500):
#     listall = re.findall(r'\[\w*\^?\w*\]\d', string, flags=0)
#     if len(listall):
#         find = re.search(r'\[\w*\^?\w*\]\d', string, flags=0)
#         find_group = find.group(0)
#         str = find.group(0).split("]")
#         list_str = list(str[0])
#         replace="["
#         for char in list_str:
#             if char not in ["[","^"]:
#                 replace += char + str[1]
#             if char == "^":
#                 replace +="^"
#         replace+="]"
#         string = string.replace(find_group, replace)
#     else:
#         break
# print string
# # while(re.search(r'\[\w+\][2,4,6,8]', string, flags=0)):
# #     find = re.search(r'\[\w+\][2,4,6,8]', string, flags=0)
# #     # find = re.findall(r'\[\w+\]\,+[2,4,6,8]?', string, flags=0)
# #     str = find.group(0).split("]")
# #     list_str = list(str[0])
# #     replace="["
# #     for char in list_str:
# #         if char not in ["[","^"]:
# #             replace += char + str[1]
# #         if char == "^":
# #             replace +="^"
# #     replace+="]"
# #     string = string.replace(find.group(0),replace)
# # print string