Você pode simplificar um pouco (vou explicar o que é cada coisa):
Pattern.compile(".*?fila:\\s(.*?\\.)");
Quando você coloca o “.*?” você está falando para pegar todos os caracteres até o próximo que continua a regexp… Ou seja, você faz o * ficar preguiçoso…
[quote=Rafael Guerreiro]Você pode simplificar um pouco (vou explicar o que é cada coisa):
Pattern.compile(".*?fila:\\s(.*?\\.)");
Quando você coloca o “.*?” você está falando para pegar todos os caracteres até o próximo que continua a regexp… Ou seja, você faz o * ficar preguiçoso…[/quote]
Acho que é quase isso, mas o \. fica fora do grupo.public static void main(String[] args) {
String str = "fila: 0006 - Server DOWN.";
Pattern p = Pattern.compile(".*?fila:\\s(.*?)\\.");
Matcher m = p.matcher(str);
if(m.find()){
System.out.println(m.group(1));
}
}