我需要在java中編寫正則表達式來匹配域和子域(.domain.com)。 正則表達式應該返回true爲正則表達式匹配
domain.com
m.domain.com
abc.domain.com
www.domain.com
但
abcdomain.com
1domain.com
返回false我盡力配合domain.com和,如果前面的字符存在,則它必須是。
我嘗試了各種選擇,但它在一個或其他測試用例中失敗。
我需要在java中編寫正則表達式來匹配域和子域(.domain.com)。 正則表達式應該返回true爲正則表達式匹配
domain.com
m.domain.com
abc.domain.com
www.domain.com
但
abcdomain.com
1domain.com
返回false我盡力配合domain.com和,如果前面的字符存在,則它必須是。
我嘗試了各種選擇,但它在一個或其他測試用例中失敗。
試試這個:
(\.|^)domain.com$
第一部分表示應該有一個。或者沒有 和$手段,
你可以試試 「結尾」:
(^|\.)domain\.com$
但Java大多隻處理全系匹配,所以:
(.+\.)?domain\.com
,或者您可以使用在Java代碼.endWith()方法:
if (domain.equals("domain.com") || domain.endsWith(".domain.com")) {
// do something...
}