Как соответствовать двум узорам на Java?JAVA

Программисты JAVA общаются здесь
Anonymous
Как соответствовать двум узорам на Java?

Сообщение Anonymous »

Я могу извлечь данные между двумя строками (SSS & EEE), используя ниже код < /p>
e.g. MSG:
msg = "ADG SSS, DATA1, DATA2, DATA3, EEE"; < /p>
Pattern r = Pattern.compile("sss(.*?)eee");

String detect_start = null;

Matcher m = r.matcher(msg) ;

while(m.find())
{
detect_start = m.group(1);
}

Я получаю правильные значения в detect_start ->, data1, data2, data3,
Теперь я хочу сопоставить два шаблона
r = pattern.compile ("sss (.*? = Pattern.compile ("ack (.?) ack_r.matcher (msg);
Я пробовал ниже логику, но это не работает
(только первой шаблон)
Pattern r = Pattern.compile("sss(.*?)eee");
Pattern ack_r = Pattern.compile("ack(.?)received");
String detect_start = null;
String detect_ack = null;
Matcher m = r.matcher(msg) ;
Matcher m_ack = ack_r.matcher(msg);

while(m.find())
{
detect_start = m.group(1);
}
while(m_ack.find());
{
detect_ack = m_ack.group(1);
}


Подробнее здесь: https://stackoverflow.com/questions/685 ... ns-in-java

Вернуться в «JAVA»