我有以下问题。我的程序中有以下行的输入:
08:47:29.3 X0 LAN Static IP 192.168.219.1 255.255.255.128 0.0.0.0 1 Gbps Full Duplex
08:47:31.7 X0 LAN Static IP 192.168.219.1 255.255.255.128 0.0.0.0 1 Gbps Full Duplex
08:47:38.9 X0 LAN Static IP 192.168.219.1 255.255.255.128 0.0.0.0 1 Gbps Full Duplex
08:47:40.3 X0 LAN Static IP 192.168.219.1 255.255.255.128 0.0.0.0 1 Gbps Full Duplex
08:47:43.6 X1 WAN DHCP 172.22.4.192 255.255.255.0 172.22.4.1 1 Gbps Full Duplex 172.22.1.2 0.0.0.0 0.0.0.0
每一行都被视为一个单独的字符串。对此进行子串化的最佳方法是什么,或者更好地使用正则表达式来存储变量中的某些值?
例如:
Name= X0, Type= LAN, Mode= Static IP, IP= 192.168.219.1, Subnet=255.255.255.128, Speed: 1 Gbps Full Duplex
输入在“列”之间具有可变级别的空格,因此我认为尝试使用正则表达式在两个或多个空格之后获取任何内容是一个好主意,但我一直无法获得所需的输出。
有人知道如何做这样的事情吗?
最佳答案
如果没有正则表达式,它会像这样:line=line.split("");
使用正则表达式 line.split("{2,}");
现在您必须拆分第一个字符串才能仅获取名称
关于java - Java 中字符串的正则表达式或足够的子字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40590410/