V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
RotJun
V2EX  ›  Java

深夜提问 Java 如何判断是否为正确域名格式

  •  
  •   RotJun · 2022-07-01 02:10:18 +08:00 via iPhone · 3055 次点击
    这是一个创建于 877 天前的主题,其中的信息可能已经有所发展或是发生改变。
    如题,各位大佬,遇到个问题,套了许多正则也不能判断一个域名是否为正确的格式,或许正则不是最好的方式? 有没有懂的老哥指导一番🌚🌚
    14 条回复    2022-07-01 17:58:09 +08:00
    iwdmb
        1
    iwdmb  
       2022-07-01 06:08:06 +08:00
    Apache Commons: DomainValidator
    wd
        2
    wd  
       2022-07-01 07:52:10 +08:00 via iPhone
    域名允许的字符就那几个,应该不难的样子。你不如说说看你用了什么方式,判断不出来什么域名?
    zzzbkl
        3
    zzzbkl  
       2022-07-01 08:17:09 +08:00 via Android
    rfc1123 相关的 regex 可以看一下
    ShinichiYao
        4
    ShinichiYao  
       2022-07-01 08:20:50 +08:00   ❤️ 1
    扔给 DNS ,回来有效 IP 就判定正确
    sadfQED2
        5
    sadfQED2  
       2022-07-01 08:45:48 +08:00 via Android
    @ShinichiYao 我也这么想的😂总有一些奇奇怪怪的子域名,或者后缀,正则不好覆盖
    Saxton
        6
    Saxton  
       2022-07-01 08:51:47 +08:00
    如果你有用到 springmvc 可以用用他的匹配器
    oneisall8955
        7
    oneisall8955  
       2022-07-01 08:52:00 +08:00 via Android
    域名还是 url ,我记得两个正则在 stackoverflow 都有
    RotJun
        8
    RotJun  
    OP
       2022-07-01 09:40:13 +08:00 via iPhone
    @oneisall8955 就是域名呀 不是 URL
    RotJun
        9
    RotJun  
    OP
       2022-07-01 09:41:07 +08:00 via iPhone
    @Saxton
    @zzzbkl regex 总感觉覆盖不广
    zhilincom
        10
    zhilincom  
       2022-07-01 10:10:24 +08:00
    关键还有中文域名,不知道兼容性怎么样。
    Jakarta
        11
    Jakarta  
       2022-07-01 10:14:28 +08:00 via Android
    为啥不试试 1 楼的方案?
    RotJun
        13
    RotJun  
    OP
       2022-07-01 11:26:11 +08:00
    @oneisall8955 好的,非常感谢,我去康康
    haolongsun
        14
    haolongsun  
       2022-07-01 17:58:09 +08:00
    真域名还是去请求一下 dns ,让它帮你检查,格式的化正则。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   920 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 22:29 · PVG 06:29 · LAX 14:29 · JFK 17:29
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.