問題

スペースの数がわからない場合、<br />の後にSpacesを&nbsp;に置き換えるにはどうすればよいですか?

  string Text = "3 stunning private villas <br />   The Beach villa";
 if (Text.Contains("<br /> "))
 {
   Text = Text.Replace("<br /> ", "<br />&nbsp;");
 }
 

  ベストアンサー

<br />の後にあるすべての(空白)スペース(つまり、すべての種類のスペース、タブ化など)を置き換えたい場合は、正規表現を使用してみましょう。

   string Text = "3 stunning private villas <br />   The Beach villa";

  string result = Regex.Replace(
      Text,
    @"(?<=\<br \/\>)\s+",
      match => string.Concat(Enumerable.Repeat("&nbsp;", match.Length)));

  Console.Write(result);
 

結果:

   3 stunning private villas <br />&nbsp;&nbsp;&nbsp;The Beach villa
 

  同じタグがついた質問を見る

c#string