• 締切済み

日付の正規表現

C#で日付の正規表現をしておりますが、全角括弧((3))の処理がうまく行えずに 困っております。 下記のいずれかにマッチすればエラーメッセージを表示させないと言う処理を行っています。 マッチさせたいパターン (1)2011/01/01 (2)2011/01/01(月) ※半角カッコ (3)2011/01/01(月) ※全角カッコ (1)\d{4}/\d{1,2}/\d{1,2} (2)\d{4}/\d{1,2}/\d{1,2}\([月火水木金土日]\) (3)\d{4}/\d{1,2}/\d{1,2}([月火水木金土日]) if (System.Text.RegularExpressions.Regex.IsMatch( TextBox1.Text, @"\d{4}/\d{1,2}/\d{1,2}") || System.Text.RegularExpressions.Regex.IsMatch( TextBox1.Text, @"\d{4}/\d{1,2}/\d{1,2}\([月火水木金土日]\)") || System.Text.RegularExpressions.Regex.IsMatch( TextBox1.Text, @"\d{4}/\d{1,2}/\d{1,2}([月火水木金土日]") ) }else{ MessageBox.Show("エラー"); } お分かりの方がいらっしゃいましたらご教授頂けないでしょうか。 よろしくお願い致します。

みんなの回答

  • notnot
  • ベストアンサー率47% (4900/10359)
回答No.1

全角の閉じ括弧が書いてないように見えますが。

NeilMania
質問者

お礼

すいません。修正致しました。 (1)\d{4}/\d{1,2}/\d{1,2} (2)\d{4}/\d{1,2}/\d{1,2}\([月火水木金土日]\) (3)\d{4}/\d{1,2}/\d{1,2}([月火水木金土日]) if (System.Text.RegularExpressions.Regex.IsMatch( TextBox1.Text, @"\d{4}/\d{1,2}/\d{1,2}") || System.Text.RegularExpressions.Regex.IsMatch( TextBox1.Text, @"\d{4}/\d{1,2}/\d{1,2}\([月火水木金土日]\)") || System.Text.RegularExpressions.Regex.IsMatch( TextBox1.Text, @"\d{4}/\d{1,2}/\d{1,2}([月火水木金土日]") )) }else{ MessageBox.Show("エラー"); }

NeilMania
質問者

補足

自己解決致しましたので、締切致します。

関連するQ&A

専門家に質問してみよう