Regex simples para Data Source Serial ASCII

Pessoal

O telegrama que recebo vindo da comunicação serial que tenho é :
-1885.2 mV
-1885.6 mV
-1885.4 mV
-1885.7 mV

Usei o seguinte regex:
[0-9]{4}.[0-9]

sem sucesso na leitura.
O erro é Value String not found.

O modo de parada coloquei como 10 caracteres no data source.

Qual o regex correto disso?

Ontem a noite dei mais uma estudada sobre Regex.

Encontrei ferramentas linux que permitem testar a expressão regular.

Uma delas foi a Visual REGEXP, do L.Riester, testei em meu ubuntu 11.04
$ sudo apt-get install visual-regexp
Apesar de ser uma ferramenta visual, o Visual Regexp não instalou-se no menu ubuntu. Rode-o no console:
$ visual-regexp

Se não quiser instalar, existe versão online de outro autor, gskinner, com GUI semelhante:
http://www.gskinner.com/RegExr/

Essa é interessante, online também, mais intuitiva:
http://txt2re.com/

Ainda não consegui testar, porque estraguei minha instalação rxtx, quando instalei o eclipse, e rodando um programinha java para testar/verificar minha usb/serial.

Encontrei um artigo do Aurélio Marinho Vargas, que agilizou minha evolução em expressões regulares:
http://aurelio.net/regex/guia/

Verifiquei que o formato do trem de caracteres do equipamento muda, conforme o valor:
1995.5 mV

  • 1995.5 mV
  • 1995.5 mV
    1995.5 mV
    1995.5 mV
    895.6 mV
  • 895.6 mV
    95.6 mV
  • 95.6 mV
    5.6 mV
  • 5.6 mV
    0.0 mV

Usando as ferramentas citadas, principalmente essa do gskinner http://www.gskinner.com/RegExr/ e cheguei na seguinte REGEX para capturar as leituras acima:

((.)+\d{4}.\d{1} (mV))|((.)+\d{3}.\d{1} (mV))|((.)+\d{2}.\d{1} (mV))|((.)+\d{1}.\d{1} (mV))

Penso que não é uma solução muito técnica montar 4 expressões do tipo OU “|” para capturar largura de dígitos antes do ponto decimal. Deve ter algo melhor para fazer isso.

Galera, essa sintaxe usada no SCADABR é do java ?