none
Ayuda con expresion regular RRS feed

  • Pregunta

  • Buenas colegas tengo problema con una expresion regular, estoy tratando de crear un validador de formulas. El cual permitira variables las cuales pueden ser desde la A hasta la L. Ademas debe permitir cualquier digito y debe permitir hacer una de las operaciones basicas (+,-,*,/). Las siguientes formulas serian validas: A+4 , 3-B , 3*5-B  Las siguientes formulas no serian validas:  AA+3 , 3 -+ 6, 2-4+

    esta expresion solo me pone correcto 2+3 pero no 4+3-2 alguna forma de hacer que tome ese mismo patron muchas veces?

    string expresion = @"^((\d|[A-L]){1}[\+,\-,\*,/]{1})+$";

    Regex exp = new Regex(expresion); return exp.IsMatch(cadena);


    tengo esta expresion regular, no funciona porque dice que es valido al ingresar 22 ademas si ingreso 2+4-3 dice que no es valido, pero esta formula si deberia ser valida. De antemano muchas gracias por tomarse el tiempo de leerme.

    string expresion = string expresion = @"^((\d|[A-L]){1}([\+\-\*/]{1}(\d|[A-L]){1})?)+$"; Regex exp = new Regex(expresion); return exp.IsMatch(cadena);

    domingo, 7 de junio de 2015 1:55

Respuestas

Todas las respuestas

  • Hasta donde sé la forma de usar autómatas en programación es por medio de expresiones regulares. No entiendo a que te refieres con usar autómatas, si me das un ejemplo te estaré muy agradecido. Gracias por tomarte el tiempo de leer mi pregunta. Saludos. 

    Brayan Bermúdez

    lunes, 8 de junio de 2015 2:09
  • Creo que esta te servirá:

    @"^([A-Z]|\d+)([+|\-|*|\/]([A-Z]|\d+))*$"

    lunes, 8 de junio de 2015 6:35