/ / Reemplazar caracteres y números no alfabéticos con otros caracteres especiales - regex, vb.net, reemplazar

Reemplazo de caracteres y números no alfabéticos con otros caracteres especiales: regex, vb.net, reemplazar

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 № 1

Simplemente 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 ""