Em ASP Clássico, você pode validar se o conteúdo de uma variável contém apenas números ou se é um nome (que geralmente conterá letras e possivelmente espaços) usando uma combinação de funções IsNumeric e expressões regulares (regex).
Aqui está um exemplo de como fazer isso:
<%
Dim inputStr
inputStr = "12345" ' ou "ana clara da silvana"
' Verifica se é um número
If IsNumeric(inputStr) Then
Response.Write("O valor é um número.")
Else
' Verifica se é um nome (ou seja, contém letras e possivelmente espaços)
Dim regex, matches
Set regex = New RegExp
regex.Pattern = "^[a-zA-Zs]+$"
regex.IgnoreCase = True
regex.Global = True
Set matches = regex.Execute(inputStr)
If matches.Count > 0 Then
Response.Write("O valor é um nome.")
Else
Response.Write("O valor contém caracteres inválidos.")
End If
Set regex = Nothing
Set matches = Nothing
End If
%>
Explicação:
IsNumeric(inputStr): Primeiro, verifica se a string contém apenas números. Se for verdade, considera que é um número.
Expressão Regular (Regex): Se não for um número, a expressão regular ^[a-zA-Zs]+$ é usada para verificar se a string contém apenas letras (a-zA-Z) e espaços (s). Se corresponder ao padrão, o código considera que é um nome.
Matches.Count > 0: Se houver correspondências, a string é considerada um nome válido. Caso contrário, ela pode conter caracteres inválidos (por exemplo, símbolos ou números misturados com letras).
Essa abordagem cobre os cenários mais comuns para diferenciar números de nomes em ASP Clássico.