0 / 0 / 0
Регистрация: 24.04.2016
Сообщений: 29
1

В сообщении может содержаться дата в формате дд.мм.гггг. Заменить её на дату предыдущего дня

12.05.2017, 10:42. Показов 5827. Ответов 3
Метки нет (Все метки)

В сообщении может содержаться дата в формате дд.мм.гггг. В заданном формате дд - целое число из диапазона от 1 до31, мм - целое число из диапазона от 1 до 12, а гггг - целое число из диапазона от 1900 до 2010 (если какая-то часть формата нарушена, то данная подстрока в качестве даты не рассматривается). Замените каждую дату в сообщении на дату предыдущего дня.
Есть рабочая программа:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Text.RegularExpressions;
 
namespace ConsoleApplication1
{
    class xeks
    {
            public void m()
        {
            Console.WriteLine("введиет дату в формате дата.месяц.год(пример 30.01.2016)");
            string text = Convert.ToString(Console.ReadLine());
        
            string pattern = "[0-3][0-9].[0-1][0-9].[1,2][9,0][0-9][0-9]";
           
            MatchCollection matches;
            Regex reg = new Regex(pattern);
            matches = reg.Matches(text);
            
            {
                for (int i = 0; i < matches.Count; i++)
                { 
                    string updDate = DateTime.Parse(matches[i].Value).AddDays(-1).ToShortDateString();
                    text = text.Replace(matches[i].Value, updDate);
                }
                Console.WriteLine("дата предыдущенго дня {0}", text);
            }
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
        
            xeks f1 = new xeks();
            
            f1.m();
            Console.ReadLine();
           
        }
    }
}
как сделать проверку на корректность даты, что бы например нельзя было бы ввести дату 32.01.2014например
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.05.2017, 10:42
Ответы с готовыми решениями:

В сообщении может содержаться дата в формате дд.мм.гггг
В сообщении может содержаться дата в формате дд.мм.гггг. В заданном формате дд – целое число из...

Замените каждую дату в сообщении на дату предыдущего дня
В сообщении может содержаться дата в формате дд.мм.гггг. В заданном формате дд – целое число из...

Дата некоторого дня определяется двумя натуральными числами, найти дату предыдущего дня
Дата некоторого дня определяется двумя натуральными числами m (порядковый номер месяца) и n...

Для заданной даты "дд.мм.гггг" определить дату предыдущего и следующего дня
Есть код для текущей даты (показывает дату вчерашнего и завтрашнего дня). Подскажите код для...

3
Злой самаритянин
182 / 182 / 94
Регистрация: 24.04.2014
Сообщений: 686
12.05.2017, 10:48 2
DateTime.TryParse - если true, значит дата корректная, иначе - нет.
0
0 / 0 / 0
Регистрация: 24.04.2016
Сообщений: 29
12.05.2017, 11:32  [ТС] 3
а как это записать в мой код?
0
Злой самаритянин
182 / 182 / 94
Регистрация: 24.04.2014
Сообщений: 686
12.05.2017, 11:42 4
C#
1
2
3
4
5
6
7
8
for (int i = 0; i < matches.Count; i++)
{ 
if (DateTime.TryParse(matches[i].Value))
{
string updDate = DateTime.Parse(matches[i].Value).AddDays(-1).ToShortDateString();
text = text.Replace(matches[i].Value, updDate);
}
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.05.2017, 11:42

В сообщении может содержаться время в формате чч:мм. Увеличите время на n минут
Дана строка, в которой содержится осмысленное текстовое сообщение. Слова сообщения разделяются...

Нужно получать дату в формате дд.мм.гггг или гггг.мм.д
Считываю системную дату например curDate = Date Получаю значени в формате дд.мм.гг А я хочу...

По нажатию кнопки "Дата" - текущую дату в формате "ДД, месяц_прописью, ГГГГ г."
По нажатию кнопки &quot;Дата&quot; - текущую дату в формате &quot;ДД, месяц_прописью, ГГГГ г.&quot; (Пример, 15 марта...

В сообщении могут содержаться IP-адреса компьютеров в формате d.d.d.d
В сообщении могут содержаться IP-адреса компьютеров в формате d.d.d.d, где d - целое число из...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.