Validation 在Grails中验证ip地址

Validation 在Grails中验证ip地址,validation,grails-2.0,grails-domain-class,grails-validation,Validation,Grails 2.0,Grails Domain Class,Grails Validation,我正在寻找一种通过约束验证Grails中IP地址的方法 这样的事情可能吗 package example class Ip { String ip static constraints = { ip(unique: true, inetAddress: true) } } 我找到了此链接:,但我不知道如何实现此链接。您可以使用正则表达式验证IP地址格式 class Ipaddr { String ip_addr static c

我正在寻找一种通过约束验证Grails中IP地址的方法

这样的事情可能吗

package example

class Ip {

    String ip

    static constraints = {
        ip(unique: true, inetAddress: true)
    }
}

我找到了此链接:,但我不知道如何实现此链接。

您可以使用正则表达式验证IP地址格式

class Ipaddr {

    String ip_addr

    static constraints = {
        ip_addr(matches:/^([0-9]|[1-9][0-9]|1([0-9][0-9])|2([0-4][0-9]|5[0-5]))\.([0-9]|[1-9][0-9]|1([0-9][0-9])|2([0-4][0-9]|5[0-5]))\.([0-9]|[1-9][0-9]|1([0-9][0-9])|2([0-4][0-9]|5[0-5]))\.([0-9]|[1-9][0-9]|1([0-9][0-9])|2([0-4][0-9]|5[0-5]))$/)
    }
}
如果需要特定范围,可以使用以下内容构建正则表达式:


IP地址范围工具

我找到了我搜索的解决方案

import org.codehaus.groovy.grails.validation.routines.InetAddressValidator

class Ip {

   String ip



 static constraints = {
    ip(blank: false, unique: true, validator: { 
         return InetAddressValidator.getInstance().isValidInet4Address(it) 
         } )
 }
}

谢谢但我更想寻找一个使用API验证路由的解决方案。嗨,我刚刚发现google的答案不再在线。