我收集了一些使用python和pexpect的思科設備的信息,並且用RE來提取討厭的小項目很多成功。恐怕我已經擊中了這一面。一些交換機堆疊在一起,我已經在腳本中確定了這一點,並使用單獨的例程來解析數據。如果開關被堆疊可以看到以下(從昭版本輸出中提取)跨多行Python蟒正則表達式
Top Assembly Part Number : 800-25858-06
Top Assembly Revision Number : A0
Version ID : V08
CLEI Code Number : COMDE10BRA
Hardware Board Revision Number : 0x01
Switch Ports Model SW Version SW Image
------ ----- ----- ---------- ----------
* 1 52 WS-C3750-48P 12.2(35)SE5 C3750-IPBASE-M
2 52 WS-C3750-48P 12.2(35)SE5 C3750-IPBASE-M
3 52 WS-C3750-48P 12.2(35)SE5 C3750-IPBASE-M
4 52 WS-C3750-48P 12.2(35)SE5 C3750-IPBASE-M
Switch 02
---------
Switch Uptime : 11 weeks, 2 days, 16 hours, 27 minutes
Base ethernet MAC Address : 00:26:52:96:2A:80
Motherboard assembly number : 73-9675-15
當我遇到此我需要提取開關數目&模型爲每個在4該表中,(SW可以忽略,但是可以有1到9個開關)這是多線路的事情,因爲我一直在休息。請有任何想法嗎?
OK道歉。我的正則表達式只是開始尋找最後一組 - 直到......然後我無法工作到哪裏去!
- {10] \ S- {10}(+。)開關
該模型將改變和開關的數量會有所改變,我需要捕獲4線在本例中其是
* 1 52 WS-C3750-48P 12.2(35)SE5 C3750-IPBASE-M
2 52 WS-C3750-48P 12.2(35)SE5 C3750-IPBASE-M
3 52 WS-C3750-48P 12.2(35)SE5 C3750-IPBASE-M
4 52 WS-C3750-48P 12.2(35)SE5 C3750-IPBASE-M
但每個開關可以是一個不同的型號,有可能是1和9之間對於該示例理想我想獲得
*,1,WS-C3750-48P
,2,WS-C3750-48P
,3,WS-C3750-48P
,4,WS-C3750-48P
(星號表示主站)
但得到的那些線將設置米Ë在正確的軌道上
你如何發佈當前正則表達式代碼你試過...我不知道我完全理解你想要得到什麼。 – Tom