2011-09-11 20 views

答えて

2

私はマスキングが正規表現をサポートしていないと考えているので、あなたは本当にURLをマスクしたくありません、マスクは石で設定されています、ワイルドカードはありません。

たとえば、あなたがのためにマスクを持っていることがあります。 aaa.aaaaaa.aaa

これが唯一のwww.google.com

マスクのようなもののために動作しますが、あなたが一定の長さを知っているような状況に最適です日付や郵便番号のようなものです。

ウェブサイトはサイト間で長さを変えることができます。あなたのフォームにプレーンテキストボックスを置き、それがウェブサイトであることを確認するために正規表現を使用する方が、簡単な作業ではありませんが、はるかに良いでしょう。有効なウェブサイトにはさまざまなバリエーションがあります。

正規表現では、このようなものは、ウェブサイトをチェックすることができます。

^((nntp|sftp|ftp(s)?|http(s)?|gopher|news|file|telnet):\/\/)?(([a-zA-Z0-9\._-]*([a-zA-Z0-9]\.[a-zA-Z0-9])[a-zA-Z]{1,6})|(([0-9]{1,3}\.){3}[0-9]{1,3}))(:\d+)?(\/[^:][^\s]*)?$ 

以上がここで見つけることができます。このためにMaskedTextBoxを避ける上 http://regexlib.com/Search.aspx?k=URL&c=-1&m=-1&ps=100

+1

1良いアドバイスを。私は彼が論理を再実装しようとするのではなく、URLを検証するために 'Uri'クラスを使うべきだと言っています。方法については、この質問を参照してください:http://stackoverflow.com/questions/4835269/how-to-check-that-a-urstst-is-valid(参照:['Uri.TryParse'](http:// msdn.microsoft.com/en-us/library/ms131572.aspx))。 –

+0

ああ、私は時には便利な方法を忘れていた、彼らはあなたのための仕事のほとんどを行う! – Krum110487