2014-10-08 112 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.