我正在输入命令show vlan
并以这种格式接收数据,它是一个字符串:
switch# show vlan
VLAN Name Status Ports
---- -------------------------------- --------- -------------------------------
1 default Active Fa1/0, Fa1/1, Fa1/4, Fa1/6
Fa1/7, Fa1/8, Fa1/9, Fa1/10
Fa1/11, Gi0
2 VLAN0002 Active
3 VLAN0003 Active Fa1/5
6 VLAN0006 Active
999 VLAN0999 Active Fa1/2, Fa1/3
switch#
我希望创建以 VLAN 编号开头并在达到 VLAN 编号时结束的新字符串。所以这里的字符串是:
(1) 1 default Active Fa1/0, Fa1/1, Fa1/4, Fa1/6
Fa1/7, Fa1/8, Fa1/9, Fa1/10
Fa1/11, Gi0
(2) 2 VLAN0002 Active
(3) 3 VLAN0003 Active Fa1/5
(4) 6 VLAN0006 Active
(5) 999 VLAN0999 Active Fa1/2, Fa1/3
我会在这里做什么,一个正则表达式,它测试一个数字后跟一个空格,但在它之前有一个 \r 或 \n?或者在 java 中使用 .charAt(i) 等类似的东西?然后子串呢?
我需要将这些字符串中的每一个拆分为带有空格分隔符的标记。我会使用 for 循环来遍历我猜的每个字符串。
如果后面跟着一个数字,我尝试在 \r\n 处拆分,对吗?
String[] parts = finalCommand.split("\r\n?=\\d");
但它不起作用?!我真的不明白为什么。