Есть строка с предложением, например "В неделе 7 дней"
. Как разделить строку по этой цифре на "В неделе "
и " дней"
если за ранее не известно какая это будет цифра?
Хотел попробовать через .Split()
, но не понятно что должно быть в скобках.
Метод Split принимает так же массив, каждый элемент которого, порежет строчку.
если у вас в тексте встречаются только цифры до 10, то можно так :
var input = "В неделе 7 дней";
var t1 = input.Split("0123456789".ToCharArray());
если же могут встетиться любые числа, то лучше использовать Regex :
var input = "В неделе 7 дней";
var t2 = Regex.Split(input, "-?[0-9]+");
Можно разделить по регулярному выражению Regex.Split
, где вторым параметром можно передать регулярку.
Вот тут даже пример есть как раз по вашему вопросу.
var date = "В неделе 7 дней";
var firstDigitValue = date.FirstOrDefault(x => Char.IsDigit(x));
var lastDigitValue = date.LastOrDefault(x => Char.IsDigit(x));
var weekPart = date.Substring(0, firstDigitValue);
var dayPart = date.Substring(lastDigitValue, date.Length);
Уверен что это далеко не лучший результат но думаю что так должно сработать.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Подскажите, пожалуйста, пример когда необходимо использовать класс Interlocked (желательно код)То есть не простые фразы из книг о необходимости...
Не работает автопрокрутка (вертикальная) при отключеном автосдвиге(горизонтальной прокрутки при выделении с длинным названием item) горизонтальной...
Привествую, недавно увидел такой оператор ^=, но так и не нашел что он делает, применялся он к int, знаю что ^ это ислючения, но ^= да еще и для intЧТо...