// 输入框输入限制:允许输入字母数字常用字符正则
final RegExp xxx = RegExp(
"[a-zA-Z]|[0-9]|[`~!@#\$%^&*()_\\-+=|{}':;',\\[\\].<>/?~!@#¥%……&*()——+|{}【】‘;:”“’。,、?]");
// 对已有字符串做校验:长度8-16,且必须包含数字、字母、符号中的任意两种
static const xxx =
"^(?!^(\\d+|[a-zA-Z]+|[~!@#\$%^&*?]+)\$)^[\\w~!@#\$%^&*?]{8,16}\$";
// 为表情正则
RegExp regexp=RegExp("[^\\u0020-\\u007E\\u00A0-\\u00BE\\u2E80-\\uA4CF\\uF900-\\uFAFF\\uFE30-\\uFE4F\\uFF00-\\uFFEF\\u0080-\\u009F\\u2000-\\u201f\r\n]");
// 只能输入零和非零开头的最多带两位小数的数字
final _regExp = RegExp(r"^(0|[1-9][0-9]*)+(\.[0-9]{1,2})?$");
///手机号验证
static bool isChinaPhoneLegal(String str) {
return RegExp(
r"^1([38][0-9]|4[579]|5[0-3,5-9]|6[6]|7[0135678]|9[89])\d{8}$")
.hasMatch(str);
}
///邮箱验证
static bool isEmail(String str) {
return RegExp(
r"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$")
.hasMatch(str);
}
///验证URL
static bool isUrl(String value) {
return RegExp(
r"^((https|http|ftp|rtsp|mms)?:\/\/)[^\s]+")
.hasMatch(value);
}
///验证身份证
static bool isIdCard(String value) {
return RegExp(
r"\d{17}[\d|x]|\d{15}")
.hasMatch(value);
}
///验证中文
static bool isChinese(String value) {
return RegExp(
r"[\u4e00-\u9fa5]")
.hasMatch(value);
}
// 验证是否为纯字母
static bool isLetter(String str) {
final reg = RegExp(r"^[ZA-ZZa-z_]+$");
return reg.hasMatch(str);
}
// 验证是否为数字
static bool isNumber(String str) {
final reg = RegExp(r"^[0-9_]+$");
return reg.hasMatch(str);
}
//验证是否包含特殊字符
static bool isHaveSpecialCharacters(String input) {
final reg = new RegExp(r'[`~!@#$%^&*()_+=|;:(){}'',\\[\\].<>/?~!@#¥%……&*()——+|{}【】‘;:”“’。,、?-]');
return reg.hasMatch(input);
}