Multiline Regex - Сопоставьте только первую строку, игнорируйте остальные линииJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Multiline Regex - Сопоставьте только первую строку, игнорируйте остальные линии

Сообщение Anonymous »

Вот метод получить удаленное имя SMTP -сервера: < /p>

public static String getMTAName(String data) {

Pattern p = Pattern.compile("^\\d{3}[ -](.*?)( .*)*$");
Matcher m = p.matcher(data);
if (m.find()) {
return m.group(1);
}

return "undefined";
}
< /code>

Проблема в том, что если я передаю многослойный ответ, например: < /p>

String s = "220-xsistema.lt ESMTPSA XMailServer 1.2 service ready\r\n220 Some other info";
System.out.println(getMTAName(s));
< /code>

Вывод «неопределен». Но если: < /p>

s = "220-xsistema.lt ESMTPSA XMailServer 1.2 service ready";
< /code>

Тогда все работает нормально - вывод "xsistema.lt". Мой вопрос - как соответствовать только первой строке?

Подробнее здесь: https://stackoverflow.com/questions/295 ... t-of-lines
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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