VB6 Encontrar un dígito en una cadena String

Eric -  
teebo Mensajes publicados 33585 Fecha de registro   Estado Colaborador Última intervención   -
Hola,
necesito ayuda. Debo saber si una cadena de caracteres empieza por un dígito (0,1,2,3..) sin hacer la prueba 10 veces.

Gracias de antemano.

Eric

4 respuestas

  1. monbobo Mensajes publicados 106 Fecha de registro   Estado Miembro Última intervención   133
     
    Si haces una base de datos SQL con tus cadenas de caracteres, realizarás consultas sobre ella y SQL te dará el resultado sin fallar.

    Si no, aplicas un filtro a tu cadena para extraer el primer carácter y pruebas su tipo (o su valor); si los primeros 8 o 4 (según el programa) están entre 0 y 9, entonces es un dígito, lo cual es al mismo tiempo su código ASCII, creo, ya que no hay confusión posible.
    0
    1. ERIC
       
      No hay una base SQL; es una variable recortada sobre un control de texto que quiero probar. Un usuario introduce una palabra que puede contener, pero no puede empezar por un número. Tengo que hacer: variable = left(variable,1) ' para aislar el primer carácter If Val(variable) ... y una prueba para saber si es un número (queda por definir cómo, pero reflexionando voy a encontrarlo). Ok, pero tengo el vaga recuerdo de If left(variable,1) is numeristic ... biensurá (bien sûr) ça no funciona. hice la pregunta esperando una respuesta de este tipo. Gracias por tu contribución. Eric
      0
  2. kougoue Mensajes publicados 304 Estado Miembro 12
     
    Ve aquí
    http://www.vbasic.org y podrás encontrar un código que te desbloquea

    Una mano ata un paquete y dos varios.
    Pù me dem bi Mboo tè si kwe
    0
  3. teebo Mensajes publicados 33585 Fecha de registro   Estado Colaborador Última intervención   1 797
     
    Select case left(variable,1) 
    Case "1","2","3","4","5","6","7","8","9","0"
    MsgBox "Sale utilisateur, lis la doc bordel de merde"
    Case Else
    MsgBox "Felicitation, tu sais la difference entre un chiffre et une lettre
    End select



    Dans le principe, mais il y a d'autre solutions aussi je pense...

    .  .
    \_/
    0
  4. teebo Mensajes publicados 33585 Fecha de registro   Estado Colaborador Última intervención   1 797
     
    Sinon ça devrait aussi marcher
     
    If variable Like "[0-9]*" then MsgBox "RTFM"


    . .
    \_/
    0