4

我有一个如下字符串:

var text = @"Some text/othertext/ yet more text /last of the text";

我想标准化每个斜线周围的空格,使其与以下内容匹配:

var text = @"Some text / othertext / yet more text / last of the text";

也就是说,每个斜杠前一个空格,后一个空格。我如何使用 Humanizer 来做到这一点,或者除此之外,使用单个正则表达式? Humanizer 是首选的解决方案。

我可以使用以下一对正则表达式来做到这一点:

var regexLeft = new Regex(@"\S/");    // \S matches non-whitespace
var regexRight = new Regex(@"/\S");
var newVal = regexLeft.Replace(text, m => m.Value[0] + " /");
newVal = regexRight.Replace(newVal, m => "/ " + m.Value[1]);
4

1 回答 1

5

您是否正在寻找这个:

  var text = @"Some text/othertext/ yet more text /last of the text";

  // Some text / othertext / yet more text / last of the text 
  string result = Regex.Replace(text, @"\s*/\s*", " / ");

由零个或多个空格包围的斜线替换为由恰好一个空格包围的斜线。

于 2016-10-31T19:34:55.923 回答