Как найти строку, содержащую строку определенного шаблона, используя регулярные выражения? - PullRequest
0 голосов
/ 20 августа 2010

У меня есть файл сценария, содержащий 1000 строк данных, а некоторые строки содержат некоторую строку даты в формате дд / мм / гггг чч: мм: сс.Моя цель состоит в том, чтобы найти строки, которые содержат дату следующего шаблона

"Value=10/08/2010 13:39:37", ENDITEM,

Некоторые примеры строк, которые содержат даты в сценарии:

"Name=s_1_1_81_0", "Value=10/08/2010 13:39:37", ENDITEM,
// {Siebel_Parse_Web_Page72_S_BC2_S40_R02_F30} = "07/27/2010"   (Some Date)
Number0*12*Install Date19*08/24/2010 00:00:0015*Unit of Measure9*Per Month19*To Service

Я хочу узнать ТОЛЬКОэти строки похожи на первый пример, а не на другие, то есть строки, содержащие строку даты, которая начинается с "Value = и заканчивается ",

Я хочукод в C #, пожалуйста.

1 Ответ

5 голосов
/ 20 августа 2010

Похоже, вы хотите строки, содержащие совпадение следующего шаблона:

"Value=\d{2}/\d{2}/\d{4} \d{2}:\d{2}:\d{2}", ENDITEM,

В качестве @ - цитируемого строкового литерала C # , это:

@"""Value=\d{2}/\d{2}/\d{4} \d{2}:\d{2}:\d{2}"", ENDITEM,"

\d является сокращением класса символов для цифры класса символов . {n} - это спецификатор с конечным повторением . Таким образом, \d{4} соответствует ровно 4 цифрам.

Вы можете сделать шаблон менее или более конкретным, например, год 9999 не сопоставляется и т. д., но, вероятно, не стоит усилий по проверке числового диапазона в регулярном выражении.

Смотри также

Похожие вопросы

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...