0

次の正規表現があります

RegExp("((http|https)(:\/\/))?([a-zA-Z0-9]+[.]{1}){2}[a-zA-z0-9]+(\/{1}[a-zA-Z0-9]+)*\/?",
   "i");

正常に動作しますが、次のパターンの URL が無効として表示されます

例:「google.com」

あなたの答えに感謝します。

4

1 に答える 1

1

あなたのコードには少なくとも が必要something.something.somethingですstuff.google.com{2}を aと+交換して、第 2 レベル ドメインを許可します。

RegExp("((http|https)(://))?([a-zA-Z0-9]+[.]{1})+[a-zA-z0-9]+(/{1}[a-zA-Z0-9]+)*/?", "i");

この正規表現には他にもいくつかの奇妙な点があり ( and の使用{1}など[.])、いくつかの有効なドメイン ( など) を考慮していないことを付け加えておきますsomething-something.com。また、 のような JS で正規表現リテラルを使用できますvar regex = /just a regex/。ですので、一読をお勧めします。

于 2013-02-21T06:10:41.293 に答える