2014-10-08 117 views
0

我怎样才能与-替换逗号和空格的字符串我已经试过这样:替换逗号和空格C#

FeatureIds = Regex.Replace(config.FeaturePacks, @"[, ]", "-"),

但它与2 -像这样替换它:

F0--F1--F2

输入字符串是像这样:

˚F 0,F1,F2

回答

5

只需添加一个+quantifier一个或多个之后的字符类[, ]所以它变成了:

[, ]+ 

Test at regex101.com

如果 “空白” 也意味着换行,改变到[,\s]+其中\sshorthand fo r [ \t\r\n\f]

+0

这是正确的,也是最短的:) – vks 2014-10-08 10:08:33

-1

难道你不能只使用替换函数而不是正则表达式?

FeatureIds = config.FeaturePacks.Replace(", ", "-"); 
+0

不,因为它不适用于一个或多个连续空格或没有空格的逗号。 -1 – 2014-10-08 09:53:15

0

改为使用“*,*”。这将匹配任意数量的空格,然后是逗号,以及任意数量的空格。通过-。看到演示See demo.

相关问题