0

アプリケーションへの入力を検証する必要があります。入力は、日付の一部を含む可能性のあるフォーマットされた文字列です。例:

{0:yy}{0:MM}{0:dd}_{0:hh}{0:mm}{0:ss}-SOME OTHER TEXT
sometext{0:yyyy}{0:MM}{0:dd}mORETEXT

String.Format()入力に日付のこれらの部分が含まれている必要はありませんが、含まれている場合は、メソッドで使用できる有効な形式のアイテムである必要があります。を使用して検証する必要Regular Expressionsがあると思いますが、私はそれが得意ではありません。

手伝ってもらえますか?

4

1 に答える 1

1

コメントを介して私たちの行き来を考えると、私はあなたが探しているものは次のとおりだと思います:

        Regex curlyThings = new Regex(@"\{0:.*?\}");
        Regex kosherCurlyThings = new Regex(@"\{0:(yy|yyyy|MM|dd|hh|mm|ss)\}");

        MatchCollection matchCollection = curlyThings.Matches("CG{0:yyyy}-{0:MM}-{0:dd}asdf{0:GARBAGE}.csv");
        foreach(Match match in matchCollection)
        {
            if(!kosherCurlyThings.IsMatch(match.Value))
            {
                Console.WriteLine("{0} isn't kosher!", match.Value);
            }                
        }
于 2012-06-21T14:43:12.317 に答える