En esta oportunidad publico una función muy útil que permite remover caracteres que no son parte del patrón.
Para ellos utilizamos la clase de RegularExpression, para ello debe incluir en el proyecto:
using System.Text.RegularExpressions;
A nuestra función le hemos llamado RemoveCharInvalids, todo lo que es parte del patrón es removido.
public string RemoveCharInvalids(string cadena)
{
string patternvalid = @"[^\w \.*@-\\]";
string _result = null;
try
{
_result = Regex.Replace(cadena, patternvalid, "", RegexOptions.None);
}
catch (Exception ex)
{
_result = cadena;
throw ex;
}
return _result;
}
Como se puede observar tenemos un patrón definido en la variable "patternvalid", le estamos diciendo que nuestra expresión que identifique los caracteres que NO son alfanuméricos, esto lo hacemos con ^\w que es equivalente a [^a-zA-Z0-9] y que NO son los caracteres punto (.), asterisco (*), arroba (@), guion medio (-) y diagonal (\\).
string patternvalid = @"[^\w \.*@-\\]";
Una vez definido el patrón, entonces procedemos a remover los caracteres con Regex.Replace
_result = Regex.Replace(cadena, patternvalid, "", RegexOptions.None);
como puedes observar lo estamos reemplazando con carácter vacío ("").
Espero que se de utilidad
No hay comentarios.:
Publicar un comentario