Я пишу свой первый код Python, и у меня есть некоторые сомнения относительно Регулярного выражения. У меня есть переменная, которая содержит
a = "'PoE Port Info','1 up medium Auto Class Searching 0 0.0 0 0.0','10 up low User defined 4(W) Searching - 0.0 0 0.0'"
Мне нужно извлечь:
'1 up medium Auto Class Searching 0 0.0 0 0.0'
и преобразовать строку в список строк со всеми удаленными пробелами
['1','up','medium','Auto Class','Searching','0','0.0','0','0.0']
аналогично
'10 up low User defined 4(W) Searching - 0.0 0 0.0'
удалите пробелы и преобразуйте в список
['10','up','low','User defined,'4(W)','Searching','-','0.0','0','0.0']
все остальные оставшиеся данные в этой строке не должны совпадать.
Мой код:
a = "'PoE Port Info','1 up medium Auto Class Searching 0 0.0 0 0.0','10 up low User defined 4(W) Searching - 0.0 0 0.0'"
b= []
#split string with ,
a = a.split(",")
print(a)
for item in a:
c = re.findall(r"[0-9]+[\s+[a-z]+]*[0-9]+",item, re.I)
if c:
#Replace whitespace character to spaces
temp = re.sub(r'[\s]+',' ', c[0])
#print(temp)
b.append(temp.split(" "))
print(b)
Этот код работает, но я сталкиваюсь с проблемой регулярного выражения. Мой текущий вывод:
[['1', 'up', 'medium', 'Auto', 'Class', 'Searching', '0'], ['10', 'up', 'low', 'User', 'defined', '4']]
Некоторые, пожалуйста, помогите мне.
Как написать RE?