Проверка каждого символа в строке на предмет принадлежности к символам - C#
Формулировка задачи:
Вот фрагмент кода
Нужно каждый символ строки проверить на предмет число это или нет, и выдать на экран какой именно символ по счету в строке не число. Если все символы в строке числа, просто вывести строку на экран.
class WorkWithFirstString
{
public void FirstString(string[] lines)
{
int lfs = lines[0].Length;
for (int i = 1; i <= lfs; i++)
{
???????????????????????
}
Console.WriteLine("Длинна первой строки = " + lfs);
}
}
Понимаю что нужно использовать char.isDigit. И что нужно создавать массив, в котором каждый символ в строке это отдельный член массива. Хотелось бы использовать Split, но проблема в том, что символы между собой никак не разделяются. Единственное, что нужно игнорировать пробел.
Т.е. вот допустим строка - 123,5уе е6
То массив думаю должен быть таким {{1}, {2}, {3}, {,}, {5}, {у}, {е}, {е}, {6}}
На экране должно быть сообщение - 4,6,7,8 символы не числа
Ну или по каждому символу по отдельности не важно -
-4 символ не число
-6 символ не число и т.д.
Решение задачи: «Проверка каждого символа в строке на предмет принадлежности к символам»
textual
Листинг программы
using System;
using System.Collections.Generic;
class Program
{
static void Main()
{
string s = "343 334 t534qq ", temp=s;
List<int> inds = new List<int>();
temp = temp.TrimEnd();
for (int i = 0; i < temp.Length; i++)
if (!Char.IsDigit(temp[i]))
inds.Add(i + 1);
if (inds.Count > 0)
Console.WriteLine("Не цифры: " + string.Join(", ", inds));
else
Console.WriteLine(s);
}
}