Репорс Python, чтобы соответствовать нескольким словам в строке, не перейдя к следующей строкеPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Репорс Python, чтобы соответствовать нескольким словам в строке, не перейдя к следующей строке

Сообщение Anonymous »

Я пишу анализатор для анализа приведенного ниже вывода: < /p>

Код: Выделить всё

    admin@str-s6000-on-5:~$ show interface status Ethernet4
Interface        Lanes    Speed    MTU         Alias    Vlan    Oper    Admin            Type    Asym PFC
---------------  -----------  -------  -----  ------------  ------  ------  -------  --------------  ----------
Ethernet4  29,30,31,32      40G   9100  fortyGigE0/4   trunk      up       up  QSFP+ or later         off
PortChannel0001          N/A      40G   9100           N/A  routed      up       up             N/A         N/A
PortChannel0002          N/A      40G   9100           N/A  routed      up       up             N/A         N/A
PortChannel0003          N/A      40G   9100           N/A  routed      up       up             N/A         N/A
PortChannel0004          N/A      40G   9100           N/A  routed      up       up             N/A         N/A
< /code>
Я сделал попытку написать регуляцию, чтобы соответствовать всем полям, как ниже < /p>
(\S+)\s+([\d,]+)\s+(\S+)\s+(\d+)\s+(\S+)\s+(\S+)\s+([up|down])+\s+([up|down]+)\s+([\w\s+?]+)\s+(\S+)
< /code>
Я могу правильно добраться до столбца администратора. Тип столбца содержит несколько слов, поэтому я использовал шаблон ([\ w \ s+?]+) 
, надеясь, что он будет соответствовать нескольким рабочим значениям, разделенным одним пространством с+необязательным, за которым следует (\ s+) , чтобы соответствовать последнему столбцу. Проблема, с которой я сталкиваюсь, REGEX ([\ W \ S+?]+) порождает несколько строк, и дает мне выход, как показано ниже

Код: Выделить всё

Ethernet4  29,30,31,32      40G   9100  fortyGigE0/4   trunk      up       up  QSFP+ or later         off PortChannel0001          N/A 

Я вижу, что \ s также соответствует новой строке. Как ограничить это, чтобы не соответствовать новой линии? Может ли кто -нибудь, пожалуйста, помочь мне уточнить. Кто -нибудь может помочь мне понять это лучше?

Подробнее здесь: https://stackoverflow.com/questions/788 ... -next-line
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»