O que você está tentando fazer é envolver uma lógica complexa que não será possível, mesmo em um editor de texto avançado como o Notepad ++. Além disso, seu problema não é definido com precisão (por exemplo, "12.3" é um número ou não?). Só você conhece suas necessidades exatas.
Dependendo de como você é técnico, você pode adaptar o seguinte código C # para fazer exatamente o que deseja. Você precisará do Visual Studio Express ou similar. É claro que você pode escrever isso em outro idioma ou tentar encontrar uma solução alternativa. Observe que o código excluirá as linhas iniciando com "Volume", mesmo que o texto a seguir não seja um número. Você precisará lidar exatamente com o processamento que deseja. Além disso, o código lida com arquivos especificamente por nome. Se você quiser reciclar todos os arquivos em uma pasta, digamos, esse é outro detalhe que talvez seja necessário considerar:
// Read the file line by line
string szOriginal = @"C:\Tmp\Test.txt";
string szCopy = @"C:\Tmp\Test.txt.tmp";
StreamReader fText = new StreamReader(szOriginal);
StreamWriter fCopy = new StreamWriter(szCopy);
string szLine = string.Empty;
int nIndex = 0;
while ((szLine = fText.ReadLine()) != null)
{
// Don't copy lines starting with "Volume " (note space character)
nIndex = szLine.IndexOf("Volume ");
if (nIndex != 0)
fCopy.WriteLine(szLine);
}
fText.Close();
fCopy.Close();
// Delete original and rename copy
File.Delete(szOriginal);
File.Move(szCopy, szOriginal);
Crie um projeto vazio do Windows Forms, adicione um botão, clique duas vezes no botão (para visualizar o código no editor), cole o código acima (com quaisquer modificações, se necessário), execute o código e clique no botão . Boa sorte!