数据验证摘要

以下摘要基于 String 类型定义了 EmailAddress 类型,该类型将使用正则表达式将传递的参数验证为电子邮件地址。如果地址无效,则抛出异常。

abstract EmailAddress(String) {
  static var ereg = ~/^[\w-\.]{2,}@[\w-\.]{2,}\.[a-z]{2,6}$/i;
  
  inline public function new(address:String) {
    if (!ereg.match(address)) throw "EmailAddress "$address" is invalid";
    this = address.toLowerCase();
  }
}

使用摘要如下。

var emailGood = new EmailAddress("john@doe.com");
var emailBad = new EmailAddress("john.doe.com");

试试 try.haxe.org 上的例子

参考