[英]Regex exclude specific subdomain (Java)
我想從正則表達式中排除特定的子域。 我已經搜索並嘗試了不同的正則表達式。 但非為我工作。
普通的正則表達式如下所示:
https?:\/\/((localhost(\:\d+)?)|([a-z\-\.]*\.)?(gaga.ch|gugus.ch))
為了在gugus.ch中排除名稱為admin的子域,我添加了: (^(?!.*admin).*)
因此整個正則表達式如下:
https?:\/\/((localhost(\:\d+)?)|([a-z\-\.]*\.)?(gaga.ch|(^(?!.*admin).*)gugus.ch))
因此,它應該允許通過http://www.gugus.ch
但不能通過http://admin.gugus.ch
這是行不通的。 我做錯了什么?
邁克
試試這個正則表達式:
https?://((localhost(:\d+)?)|([a-z.-]*\.)?(gaga\.ch|(?<!\badmin\.)gugus\.ch)
(?<!\\badmin\\.)
是負數 ,如果gugus.ch
之前是admin.
則匹配失敗admin.
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.