расщепление строки с помощью переключателя впоследствии

1

В настоящее время я переношу проект VB в java и столкнулся с проблемой, с которой я застрял.

Я получаю строку, которая выглядит следующим образом:

HOST: xxx.xxx.xxx.xxx
DEFAULT: xxx.xxx.xxx.xxx 
OS: LINUX
ID: az150
LIB: eth15

newline в конце каждого выхода, пробел после: "Я хотел бы разбить эти строки и использовать случай переключателя впоследствии. Не уверен, что заказ остается неизменным все время.

корпус коммутатора будет выглядеть примерно так:

switch(aString)
{
case "HOST":
   String host = HOST Value (xxx.xxx.xxx.xxx);
   do something with it
   break;
...

default:
  break;
}

благодарю!

  • 1
    просто разделить по :\\s+ регулярное выражение.
  • 1
    А какой у тебя актуальный вопрос?
Показать ещё 5 комментариев
Теги:
string
split

1 ответ

0

Метод String.split() способен решить проблему и даже не требует регулярного выражения.

Предложите, чтобы у вас была строка типа

String string = "HOST: xxx.xxx.xxx.xxx\n"
        + "DEFAULT: xxx.xxx.xxx.xxx\n"
        + "OS: LINUX\n"
        + "ID: az150\n"
        + "LIB: eth15";

то вы можете получить строку ключа-значения следующим образом

String[] lines = str.split("\n");

для каждой строки в массиве могут быть достигнуты ключ и значение, как

String[] entry = s.split(":");
String key = entry[0];
String value = entry[1].trim(); // omit whitespace

то вы можете поместить пару ключ-значение в любом месте, например Map, Property, Config и т.д. И тогда предложение переключения будет работать хорошо. Вы также можете проверить, пустое ли значение перед его использованием, поскольку значение не содержит ничего.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню