入力フォームでE-mailやURLの入力をチェックするのに、正規表現を使って行うけど、ネットを探して見つけたサンプルが、全然使えなくて大変だった。笑
ただでさえ、C#のサンプルってあまりないのに。。。
MSDNのサイトのサンプルさえも使えなくて。。。
どのサンプルもURLチェックで、「-」(ハイフン)付きのURLがどうしても通らなくて。。。
正規表現の予約語で<host>とか<domain>とかってあるけど、あれって、どんな文字までチェックしてるんだろう。。。
RegularExpressionValidatorツールを使えば、まぁ簡単にE-mailやURLのチェックもしてくれるんだろうけど、実装上どうしても使えないときに手組みしないといけなくて。。。
でも、このRegularExpressionValidatorツールのプロパティ「ValidationExpression」に「正規表現エディタ」というのがあったので、こちらを使ってサンプルを実装。
VisualStudioってほんと便利だなぁ~。
正規表現、昔勉強したけど、完全に忘れていきそう。笑
E-mailチェックの正規表現サンプル
//Emailチェック
System.Text.RegularExpressions.Regex regex =
new System.Text.RegularExpressions.Regex(@"\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*");
System.Text.RegularExpressions.Match m =
regex.Match("対象文字列");
if (!m.Success)
{
string errorMsg = "E-Mailの入力が正しくありません。";
}
URLチェックの正規表現サンプル
//URLチェック
System.Text.RegularExpressions.Regex regex =
new System.Text.RegularExpressions.Regex(@"http(s)?://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?");
System.Text.RegularExpressions.Match m =
regex.Match("対象文字列");
if (!m.Success)
{
string errorMsg = "E-Mailの入力が正しくありません。";
}
[tmkm-amazon]4873113598[/tmkm-amazon]

