В зависимости от того, как формируется ваша строка, не определен, но определяется формат MAC-адреса. Я бы не пытался разбить строку и надеюсь, что индекс n будет правильным значением. Вместо этого я бы использовал выражение regulare, чтобы найти правильную позицию строки, которая соответствует формату mac-address.
Вот Лил пример (не тестировался):
String input = "ISL-1027
20:13:02:22:00:76"
Pattern macAddrPattern = Pattern.compile("[0-9a-fA-F]{2}\:[0-9a-fA-F]{2}\:[0-9a-fA-F]{2}\:[0-9a-fA-F]{2}\:[0-9a-fA-F]{2}\:[0-9a-fA-F]{2}\");
String macAdr = parseMacAddr(input);
public String parseMacAddr(String value) {
Matcher m = macAddrPattern.matcher(value);
if (m.matches()) {
return value.substring(m.start(),m.end());
}
return null;
}
Это всегда должно работать.
есть пробел между ISL-1027 и 20: 13: 02: 00: 76? – Emmanuel
да есть пробел – Nic