Estoy usando el siguiente código para sacar cualquier cosa otro que caracteres alfabéticos, números, signo de interrogación, punto de exclamación, periodos, paréntesis, comas & guión:
MsgBox(System.Text.RegularExpressions.Regex.Replace("hello to you"s! My # is (442) 523-5584. @$%^*<>{}[]|/?,+-=:;`~", "[^A-Za-z0-9]", ""))
Se me ocurre esto: hellotoyousMy # is4425235584
Debería leerse así: hola a ti Mi # es (442) 523-5584.?,
Respuestas
1 para la respuesta № 1Simplemente agregue todos los caracteres a su clase de caracteres negados (¡tome nota del carácter de espacio!):
MsgBox(System.Text.RegularExpressions.Regex.Replace("hello to you"s! My # is (442) 523-5584. @$%^*<>{}[]|/?,+-=:;`~", "[^A-Za-z0-9 ?!.(),#-]+", ""))
(También he añadido una repetición +
a su expresión regular, por lo que puede reemplazar los caracteres no permitidos consecutivos de una sola vez)
1 para la respuesta № 2
Agregue un espacio y otros símbolos en la expresión regular:
MsgBox(System.Text.RegularExpressions.Regex.Replace("hello to you"s! My # is (442) 523-5584. @$%^*<>{}[]|/?,+-=:;`~", "[^A-Za-z0-9 ()!.,-?]", ""))
1 para la respuesta № 3
Regex.Replace("your text", "[^A-Za-z0-9 ?!.(),-]+", "")
[^ A-Za-z0-9?!. (), -] + capturará todos los caracteres no deseados que siguen uno tras otro y los reemplazará por ""