我有以下正則表達式。我想驗證<subdomain>.example.org
。但是,由於域名包含example
,因此發生了匹配。如何只匹配第一個點之前?
驗證時,該地址是www.example.org
當地址example.example.org
我有以下正則表達式。我想驗證<subdomain>.example.org
。但是,由於域名包含example
,因此發生了匹配。如何只匹配第一個點之前?
驗證時,該地址是www.example.org
當地址example.example.org
看起來你失蹤期間轉義字符
^(example)\..*$
應該工作
一個簡單的方法可能是將它分解成兩個驗證應該與不應該匹配:
^.+\.example\.org$
^(www)?\.example\.org$
如果1)匹配並且2)不匹配,則它是example.org
的子域;否則,它不是。 (雖然www
在技術上是一個子域,但你懂的。)
看來,一個簡單的
^example\.
就夠了。或者使用字符串方法,根據您的語言:
url.indexOf('example.') === 0
如果輸入如example.org
也是可以的,你可以使用
^example\..+\.
迫使兩個點的出現。但是這對example.co.uk
仍然會失敗。這取決於你的輸入。
「example.somethingelse.com」應該匹配嗎?那麼'somethingelse.example.org'怎麼樣?那麼'some.thing.example.org'怎麼樣? – NullUserException
只是'example.com'(沒有子域)呢? example.somethingelse.com應該匹配 –
。 somethingelse.example.org不應該。 –