📄 commonvalidator.java
字号:
package cn.hope.front.form.validation;
import java.io.Serializable;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class CommonValidator implements Serializable
{
/**
* Empty
*/
public boolean isEmpty(String s) {
return s == null || s.equals("");
}
public boolean isEmptyWithoutNull(String s) {
return s == null || s.trim().equals("");
}
public boolean isSpace(char c) {
return isHalfWidthSpace(c) || isFullWidthSpace(c);
}
public boolean isSpace(String s) {
if (s == null || s.length() == 0)
return false;
for (int i = 0, len = s.length(); i < len; i++) {
if (!isSpace(s.charAt(i))) {
return false;
}
}
return true;
}
public boolean isHalfWidthSpace(char c) {
return c == 0x0020;
}
public boolean isHalfWidthSpace(String s) {
if (s == null || s.length() == 0)
return false;
for (int i = 0, len = s.length(); i < len; i++) {
if (!isHalfWidthSpace(s.charAt(i))) {
return false;
}
}
return true;
}
public boolean isFullWidthSpace(char c) {
return c == 0x3000;
}
public boolean isFullWidthSpace(String s) {
if (s == null || s.length() == 0)
return false;
for (int i = 0, len = s.length(); i < len; i++) {
if (!isFullWidthSpace(s.charAt(i))) {
return false;
}
}
return true;
}
/**
* Digit
*/
public boolean isDigit(char c) // '0' ~ '9' || '?' ~ '?'
{
return isHalfWidthDigit(c) ;
}
public boolean isDigit(String s) {
if (s == null || s.length() == 0)
return false;
for (int i = 0, len = s.length(); i < len; i++) {
if (!isDigit(s.charAt(i))) {
return false;
}
}
return true;
}
public boolean isHalfWidthDigit(char c) // '0' ~ '9'
{
return (c >= 0x0030 && c <= 0x0039);
}
public boolean isHalfWidthDigit(String s) {
if (s == null || s.length() == 0)
return false;
for (int i = 0, len = s.length(); i < len; i++) {
if (!isHalfWidthDigit(s.charAt(i))) {
return false;
}
}
return true;
}
public boolean isFullWidthDigit(char c) // '?' ~ '?'
{
return (c >= 0xFF10 && c <= 0xFF19);
}
public boolean isFullWidthDigit(String s) {
if (s == null || s.length() == 0)
return false;
for (int i = 0, len = s.length(); i < len; i++) {
if (!isFullWidthDigit(s.charAt(i))) {
return false;
}
}
return true;
}
/**
* Alpha
*/
public boolean isAlpha(char c) // A~Z || a~z || ? ~ !) || ? ~ ?
{
return isHalfWidthAlpha(c) || isFullWidthAlpha(c);
}
public boolean isAlpha(String s) {
if (s == null || s.length() == 0)
return false;
for (int i = 0, len = s.length(); i < len; i++) {
if (!isAlpha(s.charAt(i))) {
return false;
}
}
return true;
}
public boolean isHalfWidthAlpha(char c) // A~Z || a~z
{
return isHalfWidthAlphaLower(c) || isHalfWidthAlphaUpper(c);
}
public boolean isHalfWidthAlpha(String s) {
if (s == null)
return false;
for (int i = 0, len = s.length(); i < len; i++) {
if (!isHalfWidthAlpha(s.charAt(i))) {
return false;
}
}
return true;
}
public boolean isFullWidthAlpha(char c) // ? ~ !) || ? ~ ?
{
return isFullWidthAlphaLower(c) || isFullWidthAlphaUpper(c);
}
public boolean isFullWidthAlpha(String s) {
if (s == null || s.length() == 0)
return false;
for (int i = 0, len = s.length(); i < len; i++) {
if (!isFullWidthAlpha(s.charAt(i))) {
return false;
}
}
return true;
}
public boolean isHalfWidthAlphaLower(char c) // a~z
{
return (c >= 0x0061 && c <= 0x007A);
}
public boolean isHalfWidthAlphaLower(String s) {
if (s == null || s.length() == 0)
return false;
for (int i = 0, len = s.length(); i < len; i++) {
if (!isHalfWidthAlphaLower(s.charAt(i))) {
return false;
}
}
return true;
}
public boolean isFullWidthAlphaLower(char c) // ? ~ ?
{
return (c >= 0xFF41 && c <= 0xFF5A);
}
public boolean isFullWidthAlphaLower(String s) {
if (s == null || s.length() == 0)
return false;
for (int i = 0, len = s.length(); i < len; i++) {
if (!isFullWidthAlphaLower(s.charAt(i))) {
return false;
}
}
return true;
}
public boolean isHalfWidthAlphaUpper(char c) // A~Z
{
return (c >= 0x0041 && c <= 0x005A);
}
public boolean isHalfWidthAlphaUpper(String s) {
if (s == null || s.length() == 0)
return false;
for (int i = 0, len = s.length(); i < len; i++) {
if (!isHalfWidthAlphaUpper(s.charAt(i))) {
return false;
}
}
return true;
}
public boolean isFullWidthAlphaUpper(char c) // ? ~ !)
{
return (c >= 0xFF21 && c <= 0xFF3A);
}
public boolean isFullWidthAlphaUpper(String s) {
if (s == null || s.length() == 0)
return false;
for (int i = 0, len = s.length(); i < len; i++) {
if (!isFullWidthAlphaUpper(s.charAt(i))) {
return false;
}
}
return true;
}
/**
* Kanji
*/
public boolean isKanji(char c) {
return (c >= 0x2E80 && c <= 0x2EFF) // CJK Radicals
// Supplement
|| (c >= 0x2F00 && c <= 0x2FDF) // Kangxi Radicals
|| (c >= 0x3100 && c <= 0x312F) // Bopomofo
|| (c >= 0x31A0 && c <= 0x31BF) // Bopomofo
// extended
|| (c >= 0x3400 && c <= 0x4DBF) // CJK Unified
// Ideographs
|| (c >= 0x4E00 && c <= 0x9FAF) // CJK Unified
// Ideographs
|| (c >= 0xf900 && c <= 0xFAFF); // CJK
// Compatibility
// Ideographs
}
public boolean isKanji(String s) {
if (s == null || s.length() == 0)
return false;
for (int i = 0, len = s.length(); i < len; i++) {
if (!isKanji(s.charAt(i))) {
return false;
}
}
return true;
}
/**
* Hiragana
*/
public boolean isHiragana(char c) {
return (c >= 0x3040 && c <= 0x309F);
}
public boolean isHiragana(String s) {
if (s == null || s.length() == 0)
return false;
for (int i = 0, len = s.length(); i < len; i++) {
if (!isHiragana(s.charAt(i))) {
return false;
}
}
return true;
}
/**
* Kana
*/
public boolean isKana(char c) {
return isHalfWidthKana(c) || isFullWidthKana(c);
}
public boolean isKana(String s) {
if (s == null || s.length() == 0)
return false;
for (int i = 0, len = s.length(); i < len; i++) {
if (!isKana(s.charAt(i))) {
return false;
}
}
return true;
}
public boolean isHalfWidthKana(char c) {
return (c >= 0xff61 && c <= 0xff9f);
}
public boolean isHalfWidthKana(String s) {
if (s == null || s.length() == 0)
return false;
for (int i = 0, len = s.length(); i < len; i++) {
if (!isHalfWidthKana(s.charAt(i))) {
return false;
}
}
return true;
}
public boolean isFullWidthKana(char c) {
return (c >= 0x3040 && c <= 0x30ff);
}
public boolean isFullWidthKana(String s) {
if (s == null || s.length() == 0)
return false;
for (int i = 0, len = s.length(); i < len; i++) {
if (!isFullWidthKana(s.charAt(i))) {
return false;
}
}
return true;
}
/**
* Latin
*/
public boolean isLatin(char c) {
return (c >= 0x0020 && c <= 0x009F);
}
public boolean isLatin(String s) {
if (s == null || s.length() == 0)
return false;
for (int i = 0, len = s.length(); i < len; i++) {
if (!isLatin(s.charAt(i))) {
return false;
}
}
return true;
}
/**
* Full/Half width
*/
public boolean isHalfWidth(char c) {
return isLatin(c) || isHalfWidthKana(c);
}
public boolean isHalfWidth(String s) {
if (s == null || s.length() == 0)
return false;
for (int i = 0, len = s.length(); i < len; i++) {
if (!isHalfWidth(s.charAt(i))) {
return false;
}
}
return true;
}
public boolean isFullWidth(char c) {
return isFullWidthSpace(c) || isFullWidthDigit(c)
|| isFullWidthAlpha(c) || isFullWidthKana(c) || isKanji(c)
|| isHiragana(c);
}
public boolean isFullWidth(String s) {
if (s == null || s.length() == 0)
return false;
for (int i = 0, len = s.length(); i < len; i++) {
if (isHalfWidth(s.charAt(i))) {
return false;
}
}
return true;
}
public boolean isURL(String s) {
if (s == null || s.length() == 0)
return false;
Pattern p = Pattern.compile("^http://.+..+$");
Matcher m = p.matcher(s);
return m.matches();
}
public boolean isGB2312( String str )
{
if(str==null || str.length()==0)
return false;
char[] chars = str.toCharArray();
boolean isGB2312 = false;
for ( int i = 0; i < chars.length; i++ ){
byte[] bytes = ( "" + chars[i] ).getBytes();
if ( bytes.length == 2 ){
int[] ints = new int[2];
ints[0] = bytes[0] & 0xff;
ints[1] = bytes[1] & 0xff;
if ( ints[0] >= 0x81 && ints[0] <= 0xFE &&
ints[1] >= 0x40 && ints[1]<=0xFE ){
isGB2312 = true;
break;
}
}
}
return isGB2312;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -