Я работал над сценарием на python, чтобы чирикать некоторую информацию о своей дыре, и натолкнулся на небольшую проблему. Я не могу заставить re.sub
работать на меня так, как я хочу.
Я пытаюсь выполнить вывод netifaces.interfaces()
, что для меня равно ['lo', 'ens4', 'tun0', 'tun1']
и сделать его похожим на ens4, tun0, tun1
Я пытался использовать
netfaces = str(netifaces.interfaces())
netfaces = re.sub('\[|\'|lo|\'|\]', '', netfaces)
но это дает мне такой вывод:
, ens4, tun0, tun1
редактирование:
спасибо @ четвертая птица
Я углубился в регулярное выражение, которое они дали, и пришел к этому
регулярное выражение
'lo'(?:,\s*)?|[][')(]|(?:,\s*)?'lo'
мой дубль:
'lo'(?:,\s*)?
- ищет в строке 'lo',
и удаляет независимо от того, были найдены
[][')(]
- удаляет все ][
'
)(
независимо от того, были найдены
(?:,\s*)?'lo'
- удаляет все , 'lo'
независимо от того, были найдены
, который также работает для os.getloadavg()
вывода, который я тоже получаю