Foros del Web » Programación para mayores de 30 ;) » .NET »

Como cambiar codigo de funcion de una exprecion regular de c# a basic

Estas en el tema de Como cambiar codigo de funcion de una exprecion regular de c# a basic en el foro de .NET en Foros del Web. Tengo unas funciones para validar por medio de expreciones regulares campos de textobox hechas en c# necesito reutilizarlas en visual basic.net, pero no se como ...
  #1 (permalink)  
Antiguo 12/10/2007, 11:23
 
Fecha de Ingreso: noviembre-2006
Mensajes: 15
Antigüedad: 17 años, 5 meses
Puntos: 0
Pregunta Como cambiar codigo de funcion de una exprecion regular de c# a basic

Tengo unas funciones para validar por medio de expreciones regulares campos de textobox hechas en c#

necesito reutilizarlas en visual basic.net, pero no se como cambiar la sintaxis del codigo

he logrado modificar parte de la funcion, pero lo que no se como modificar es la parte en la que se coloca un signo de admiraciona ntes de la funcion por ejemplo

!IsNaturalNumber ó !objNotNaturalPattern no se que hacer con el signo de admiracion


aqui llamo a la funcion

if (!IsNaturalNumber(txt_num_semanas.Text))
{
MessageBox.Show("El numero de semanas es incorrecto", "ADVERTENCIA", MessageBoxButtons.OK, MessageBoxIcon.Warning);
txt_num_semanas.Text = "";
return;
}


funcion

public bool IsNaturalNumber(String strNumber)
{
Regex objNotNaturalPattern = new Regex("[^0-9]");
Regex objNaturalPattern = new Regex("0*[1-9][0-9]*");
return !objNotNaturalPattern.IsMatch(strNumber) &&
objNaturalPattern.IsMatch(strNumber);
}//funcion para que los numeros no sehan letras



he modificado la funcion de la siguiente manera y me funciona, pero no se como mofificar la parte de !objNotNaturalPattern.IsMatch(strNumber), es decir que hay que hacer con el signo de admiracion.

Public Function IsNaturalNumber(ByVal strNumber As String)
Dim objNotNaturalPattern as Regex = new Regex("[^0-9]")
Dim objNaturalPattern as Regex = new Regex("0*[1-9][0-9]*")
Return(objNotNaturalPattern.IsMatch(strNumber))
End Function
  #2 (permalink)  
Antiguo 12/10/2007, 12:34
 
Fecha de Ingreso: marzo-2007
Mensajes: 16
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Como cambiar codigo de funcion de una exprecion regular de c# a basic

Hola, bueno, yo siempre me he inclinado por programar en C#, pero bueno, viendo q te puedo ayudar en vb.net, es bien facil, el operador de negacion en C# es "!", en vb.net es "Not", entonces la sentencia quedaria asi:

If Not IsNaturalNumber Then ' con el not niegas la expresion q esta regresando en booleano
...
...
..
End If
Mmmm, bueno tambien viendo el codigo de la funcion q has pasado a vb.net
, tienes q agregarle esto:
Public Function IsNaturalNumber(ByVal strNumber As String) as Boolean
es el tipo de dato del cual vas a devolver la data,
Suerte

Carlos Nuñez
  #3 (permalink)  
Antiguo 12/10/2007, 14:08
 
Fecha de Ingreso: noviembre-2006
Mensajes: 15
Antigüedad: 17 años, 5 meses
Puntos: 0
Re: Como cambiar codigo de funcion de una exprecion regular de c# a basic

Cita:
Iniciado por Cnunezm Ver Mensaje
Hola, bueno, yo siempre me he inclinado por programar en C#, pero bueno, viendo q te puedo ayudar en vb.net, es bien facil, el operador de negacion en C# es "!", en vb.net es "Not", entonces la sentencia quedaria asi:


Carlos Nuñez
a mi tambien me gusta mas c#, pero me han dejado un modulo que tiene que ser en basic, y he ahì de mi confucion, probare gracias por tu ayuda
  #4 (permalink)  
Antiguo 12/10/2007, 14:30
Avatar de alexeiiw  
Fecha de Ingreso: agosto-2005
Ubicación: Guatemala
Mensajes: 73
Antigüedad: 18 años, 9 meses
Puntos: 1
Re: Como cambiar codigo de funcion de una exprecion regular de c# a basic

No pudiste reutilizar tu codigo por medio de una libreria?

Saludos...
  #5 (permalink)  
Antiguo 12/10/2007, 14:48
 
Fecha de Ingreso: noviembre-2006
Mensajes: 15
Antigüedad: 17 años, 5 meses
Puntos: 0
Re: Como cambiar codigo de funcion de una exprecion regular de c# a basic

Gracias por contestar el mesnaje, he logrado solucionarlo con el Not del que se habla arriba, gracias funciono correctamente
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 09:07.