为我那个无聊的缘分测试程序所写的中英文名字校验器,希望对大家能有作用
package com.love
{
import mx.validators.Validator;
import mx.validators.ValidationResult;
public class NameValidator extends Validator
{
private var results:Array;
private var isChinese:Boolean=false;
private var isEnglish:Boolean=false;
public function NameValidator()
{
super();
}
static public function isAsciiLetter( n:Number ):Boolean
{
if ( n >= 0x41 && n<= 0x5a ) return true;
else if ( n >= 0x61 && n<= 0x7a ) return true;
return false;
}
static public function isChineseCharacter( n:Number):Boolean
{
if ( n >= 0x3000 && n <= 0x9fff ) return true;
return false;
}
static public function isUSLetter( n:Number):Boolean
{
if ( n >= 0x0530 && n <=0x058f ) return true;
return false;
}
override protected function doValidation(value:Object):Array
{
isChinese = false;
isEnglish = false;
var name:String = (String)(value);
results = [];
results = super.doValidation(value);
if (results.length > 0)return results;
if ( name.length < 2 || name.length >16 )
{
results.push(new ValidationResult(true, null, "Invalid",
"不正确的名字长度"));
return results;
}
for ( var i:int=0;i<name.length;i++ )
{
var code:Number = name.charCodeAt(i);
if ( isChineseCharacter (code) )
{
this.isChinese = true;
//this.isEnglish = false;
}
else if ( isAsciiLetter(code) || isUSLetter(code) )
{
//this.isChinese = false;
this.isEnglish = true;
}
else
{
this.isChinese = false;
this.isEnglish = false;
}
}
if ( (!isChinese && !isEnglish) )
{
results.push(new ValidationResult(true, null, "Invalid",
"请使用纯中文或者纯英文的名字"));
return results;
}
if ( isChinese && isEnglish )
{
results.push(new ValidationResult(true, null, "Invalid",
"请使用纯中文或者纯英文的名字"));
return results;
}
return results;
}
}
/*
* 中国、日本和韩国的象形文字(总称为CJK)占用了从0x3000到0x9FFF的代码
* 希腊字母表使用从0x0370到0x03FF的代码
* 斯拉夫语使用从0x0400到0x04FF的代码
* 美国使用从0x0530到0x058F的代码,补充ASCII码
* 希伯来语使用从0x0590到0x05FF的代码
*/
}
分享到:
相关推荐
Hibernate Validator是Java社区规范JSR 380的参考实现,它是一个强大的校验器,用于校验Java Bean中的数据。它不仅支持JSR 303 Bean Validation规范定义的基本注解,还包括了一些额外的自定义约束注解。Hibernate ...
在Struts2中,校验器(Validator)是处理用户输入验证的核心组件,确保提交到服务器的数据符合预设的业务规则。这篇博客文章可能是关于如何使用Struts2的内置校验机制以及自定义校验规则的探讨。 Struts2的校验框架...
JSR校验Hibernate Validator实现需要用到的3个jar包。hibernate-validator-5.4.1.Final.jar + jboss-logging-3.1.3.GA.jar + validation-api-1.1.0.Final.jar
在JavaWeb开发中,校验器(Validator)是用于验证用户输入数据的重要工具,它确保了数据的质量,防止无效或不安全的数据进入系统。这里提到的"javaWEB写到校验器代码"是一个实现了特定验证功能的JavaWeb项目,经过...
validator插件:将jquery实现的常用操作进行...在rules中通过校验规则名称使用校验规则 ,在messages中定义该规则对应的错误提示信息。 <!-- 需要引入的文件 --> [removed][removed] [removed][removed] <
JSR303校验Hibernate Validator实现需要用到的jar包。hibernate-validator-5.4.1.Final.jar + jboss-logging-3.1.3.GA.jar + validation-api-1.1.0.Final.jar+classmate-1.3.3.jar + hibernate-validator-cdi-5.4.1....
自定义校验注解框架(Validator)是一种在Java开发中常用的技术,用于增强代码的健壮性和可维护性。在实际项目中,我们经常需要对输入的参数进行有效性检查,如非空验证、数据类型验证、长度验证等。自定义注解框架...
本文主要探讨了Spring Core中的参数校验机制,特别是通过`Validator`接口进行的校验。在前后端分离的架构中,前端通常会进行初步的参数校验,但为了系统的健壮性,后端的校验同样重要,以防止恶意数据注入。 Spring...
Hibernate Validator 是一个基于 Java Bean Validation 规范的开源验证框架,它提供了强大的数据校验功能,广泛应用于企业级开发中。此文档集包含了 Hibernate Validator 的官方英文版和中文版,旨在帮助开发者深入...
在控制器中,我们可以使用 `@Valid` 注解来调用校验。例如: ```java @ResponseBody @RequestMapping("save") public ResultModel<SysUser> save(@Valid SysUser sysUser, BindingResult result){ if (result.has...
校验器是Flex中用于验证用户输入的关键组件,它们可以防止无效的数据进入系统。Flex4提供了Validator类,开发者可以通过继承这个基类来创建自定义的验证规则。内置的验证器包括StringValidator(用于检查字符串长度...
Validator拦截器还需要一个配置文件,即`validation.xml`,它通常位于Action类的同一包下,并且名字与Action类名相同,但后缀为`validation.xml`。这个文件定义了字段的验证规则。例如,`<field name="username">`...
本示例将详细介绍如何在Struts2中创建并使用自定义校验器。 在Struts2中,数据验证分为两种类型:客户端验证和服务器端验证。客户端验证通常通过JavaScript在用户浏览器中进行,而服务器端验证则在服务器上执行,...
Hibernate Validator 使用及自定义校验器注解 Hibernate Validator 是 Hibernate 提供的一种对 Bean Validation 规范的实现,用于对 Java Bean 中的字段的值进行验证。它提供了一系列的注解来实现参数校验。 ...
本文将详细介绍Struts中的几种常用校验器及其配置方法。 #### 1. Regex校验器 Regex校验器用于对输入进行正则表达式匹配。例如,在文件中出现的`<field-validator type="regex">`元素就是用来实现正则校验的。 ``...
在Flex中,我们可以使用`from_validator`来实现这一功能。`from_validator`是一个内置的验证工具,它可以为表单字段定义验证规则,并在提交表单时执行这些规则。 二、基本流程 1. 创建表单:首先,我们需要创建一个...
本学习笔记主要探讨了Struts2中的校验器(Validator)和校验框架,帮助开发者理解如何有效地实现数据验证,确保应用程序的健壮性。 首先,我们来看Struts2的校验框架。这个框架提供了强大的功能,可以对用户输入...
在编程领域,拦截器(Interceptor)和校验器(Validator)是两种常见的设计模式,用于增强系统的功能和灵活性。它们通常被用在框架和库中,以提供额外的控制流和数据验证。以下是对这两个概念的详细解释以及它们在源...
在Spring框架中,`Validator`接口提供了一种优雅的方式来实现数据的校验,尤其是在处理用户输入或业务逻辑之前确保数据的正确性。Spring的`Validator`组件遵循DRY(Don't Repeat Yourself)原则,帮助开发者避免重复...
本文将详细介绍Struts验证器Validator的使用,包括基础配置、自定义验证器的创建,以及如何在Maven项目中管理和使用Eclipse进行编译。 **一、Struts验证器Validator的基本概念** Struts Validator是Struts框架提供...