/ / Заміна не алфавітних символів та чисел з іншими спеціальними символами - regex, vb.net, замінити

Заміна не алфавітних символів та чисел на інші спеціальні символи - regex, vb.net, замінити

Я використовую наступний код, щоб взяти що-небудь окрім алфавітні символи, номери, знак питання, знак оклику, періоди, дужки, коми & дефіс:

MsgBox(System.Text.RegularExpressions.Regex.Replace("hello to you"s! My # is (442) 523-5584. @$%^*<>{}[]|/?,+-=:;`~", "[^A-Za-z0-9]", ""))

Я придумую це: hellotoyous мій # is4425235584

Це має виглядати так: привіт вам! Мій номер (442) 523-5584.?

Відповіді:

1 для відповіді № 1

Просто додайте всі символи до вашого класу протилежних символів (візьміть до уваги пробіл!):

MsgBox(System.Text.RegularExpressions.Regex.Replace("hello to you"s! My # is (442) 523-5584. @$%^*<>{}[]|/?,+-=:;`~", "[^A-Za-z0-9 ?!.(),#-]+", ""))

(Я також додав повторюючий + до вашого регулярного виразу, тому він може замінити послідовно заборонені символи за один раз)


1 для відповіді № 2

Додайте пробіл та інші символи в регулярному виразу:

MsgBox(System.Text.RegularExpressions.Regex.Replace("hello to you"s! My # is (442) 523-5584. @$%^*<>{}[]|/?,+-=:;`~", "[^A-Za-z0-9 ()!.,-?]", ""))

1 для відповіді № 3
Regex.Replace("your text", "[^A-Za-z0-9 ?!.(),-]+", "")

Це [^ A-Za-z0-9?!. (), -] + буде захоплювати всі небажані символи, що слідують один за одним і замінюють їх ""