来自java文件的regx匹配
我不熟悉来自java文件的regx匹配,java,regex,Java,Regex,我不熟悉regx,但这似乎是我解决问题的唯一方法。 我能够使用show vlan从CISCO交换机提取文本文件。该文件如下所示。我只想在字符串数组中提取vlan编号和名称。从哪里开始 VLAN Name Status Ports ---- -------------------------------- --------- ------------------------------- 1 default
regx
,但这似乎是我解决问题的唯一方法。
我能够使用show vlan从CISCO交换机提取文本文件。该文件如下所示。我只想在字符串数组中提取vlan编号和名称。从哪里开始
VLAN Name Status Ports
---- -------------------------------- --------- -------------------------------
1 default active Gi0/1, Gi0/2, Gi0/4, Gi0/5
Gi0/6, Gi0/7, Gi0/8, Gi0/9
Gi0/10, Gi0/11, Gi0/12, Gi0/13
Gi0/14, Gi0/15, Gi0/16, Gi0/17
Gi0/18, Gi0/19, Gi0/20, Gi0/21
Gi0/22, Gi0/23, Gi0/24, Gi0/25
Gi0/26, Gi0/27, Gi0/28, Gi0/29
Gi0/30, Gi0/31, Gi0/32, Gi0/33
Gi0/34, Gi0/35, Gi0/37, Gi0/38
Gi0/39, Gi0/40, Gi0/41, Gi0/42
Gi0/43, Gi0/44, Gi0/45, Gi0/46
Gi0/47, Gi0/48, Gi0/49, Gi0/50
Gi0/51, Gi0/52
2 Test active Gi0/3
3 Internet active Gi0/36
1002 fddi-default act/unsup
1003 token-ring-default act/unsup
1004 fddinet-default act/unsup
1005 trnet-default act/unsup
VLAN Type SAID MTU Parent RingNo BridgeNo Stp BrdgMode Trans1 Trans2
---- ----- ---------- ----- ------ ------ -------- ---- -------- ------ ------
1 enet 100001 1500 - - - - - 0 0
2 enet 100002 1500 - - - - - 0 0
3 enet 100003 1500 - - - - - 0 0
1002 fddi 101002 1500 - - - - - 0 0
1003 tr 101003 1500 - - - - - 0 0
1004 fdnet 101004 1500 - - - ieee - 0 0
1005 trnet 101005 1500 - - - ibm - 0 0
Remote SPAN VLANs
------------------------------------------------------------------------------
Primary Secondary Type Ports
------- --------- ----------------- ------------------------------------------
^(\d+)\s+([^]+)
然后您将匹配VLAN编号和类型或VLAN编号和名称。
解释在这个问题下面的第一条评论中。
我唯一更改的是,名称或类型可能包含除空格以外的任何字符。您尝试了什么?这看起来像一个简单的正则表达式——匹配行的开头;匹配一个或多个数字量;匹配任意数量的空格;匹配一个或多个字母或连字符。把你感兴趣的比赛加入我从来没有和regx合作过的小组。。。这似乎是解决我问题的唯一办法。虽然逻辑对我来说很清楚,但我不知道如何用regx编写它。实际上我只是想知道VLan的名称。。。意思是一个介于数字和“活动”之间的单词。。。但是我不知道从哪里开始。