[英]Replace two or more spaces with Regex in C#
我對Regex的東西太可怕了。 我想在C#中使用正則表達式將任意兩個或更多空格轉換為不間斷空格。 我想單獨留下單個空格。
Sample Sample
會生產
Sample Sample
但
Sample Sample
不會受到影響。
有任何想法嗎?
提前致謝。
您可以使用MatchEvaluator
作為替換參數。 在C#3.0或更新版本中,您可以使用lambda函數:
s = Regex.Replace(s, " {2,}", x => x.Value.Replace(" ", " "));
它基於零寬度正向前瞻和后觀斷言。
var rx = new Regex(" (?= )|(?<= ) ");
var str = "ab cde f";
var res = rx.Replace(str, " ");
// res == ab cde f
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.