Как обрезать пробелы между символами
Как удалить пробелы между символами в С#?
Trim()
можно использовать для удаления пустых пространств в начале строки, а также в конце. Например " C Sharp ".Trim()
результат "C Sharp"
.
Но как сделать строку в CSharp
? Мы можем удалить пространство, используя цикл for
или for each
, а также временную переменную. Но есть ли встроенный метод в C#(.Net framework 3.5)
для этого, например, Trim()
?
Ответы
Ответ 1
Вы можете использовать String.Replace method
string str = "C Sharp";
str = str.Replace(" ", "");
или если вы хотите удалить все пробельные символы (пробел, вкладки, разрывы строк...)
string str = "C Sharp";
str = Regex.Replace(str, @"\s", "");
Ответ 2
Используйте String.Replace, чтобы заменить все пустое пространство ничем.
например,
string newString = myString.Replace(" ", "");
Ответ 3
Если вы хотите сохранить одно пространство между каждым словом. это должно сделать это.
public static string TrimSpacesBetweenString(string s)
{
var mystring =s.RemoveTandNs().Split(new string[] {" "}, StringSplitOptions.None);
string result = string.Empty;
foreach (var mstr in mystring)
{
var ss = mstr.Trim();
if (!string.IsNullOrEmpty(ss))
{
result = result + ss+" ";
}
}
return result.Trim();
}
он удалит строку между строкой
поэтому, если вход
var s ="c sharp";
result will be "c sharp";
Ответ 4
//Remove spaces from a string just using substring method and a for loop
static void Main(string[] args)
{
string businessName;
string newBusinessName = "";
int i;
Write("Enter a business name >>> ");
businessName = ReadLine();
for(i = 0; i < businessName.Length; i++)
{
if (businessName.Substring(i, 1) != " ")
{
newBusinessName += businessName.Substring(i, 1);
}
}
WriteLine("A cool web site name could be www.{0}.com", newBusinessName);
}
Ответ 5
string myString = "C Sharp".Replace(" ", "");
Ответ 6
Я нашел этот метод отличным для того, чтобы создавать такие вещи, как создание класса, который использует вычисленное свойство, чтобы позволить сказать "productName" и лишить пробел, чтобы создать URL-адрес, который будет равен изображению, которое использует имя продукта без пробелов. Например:
namespace XXX.Models
{
public class Product
{
public int ProductID { get; set; }
public string ProductName { get; set; }
public string ProductDescription { get; set; }
public string ProductImage
{
get { return ProductName.Replace(" ", string.Empty) + ".jpg"; }
}
}
}
Итак, в этом ответе я использовал очень похожий метод, как w69rdy, но использовал его в примере, плюс использовал string.Empty вместо "". И хотя после .Net 2.0 нет никакой разницы, мне гораздо легче читать и понимать других, которым может понадобиться прочитать мой код. Я также предпочитаю это, потому что иногда теряюсь во всех кавычках, которые у меня могут быть в блоке кода.