问题:如何去掉字符串中多个连续的空格?
解决:方法有很多种,但是在利用split方法去掉字符串中连续多个空格时,分割出的数组会产生多个空元素,导致分割后的数组随空格数的变化而变化,分割后的字符串元素不再是下标为0和1的元素。这是因为在多个空格之间的“元素”也被认为是空元素,而实际上这些元素是不存在的,所以可以利用如下方法去掉多余的空元素,得到正确的分割后的字符串数组。
static void StringExNbsp(string str) //传入需要去除空格的字符串
{
string[] arr = str.Split(' '); //按空格分隔字符串
string[] arr1 = new string[100];
int n = 0;
for (int i = 0; i < arr.Length; i++) //遍历分隔后的字符串,将非空字符串放进新的字符串数组中
{
if (arr[i] != "")
{
arr1[n] = arr[i];
n++;
}
}
Console.WriteLine(arr1[0] + " | " + arr1[1]); //arr1[0]为第一个字符串,arr2[1]为第二个字符串
}