JavaScript常用字符串验证函数汇总

作者:拾光时间:2026-10-28 21:39:49浏览:251

本文汇总了JavaScript中常用的字符串验证方法,涵盖字符检测、汉字判断、邮箱格式、手机号、固话、QQ号、身份证号、IP地址及URL等场景。通过提供具体的正则表达式和函数实现,帮助开发者快速进行前端数据格式校验,提升表单提交的准确性与安全性。

JavaScript常用字符串验证函数汇总

本文整理并汇总了JavaScript中用于字符串验证的多种常用方法,旨在为开发者提供参考,便于在实际项目中直接应用。

具体实现代码如下:

/**//**
* 检查输入的一串字符是否仅包含ASCII字符
* 输入参数:str,表示待检测的字符串
* 返回值:true 或 false;若返回 true,表示字符串全部为ASCII字符,不包含汉字
 */
function checkStr(str){
if (/[^\\x00-\\xff]/g.test(str)) {
return false;
    }
} else {
return true;
    }
}
/**//**
 * 检查输入的一串字符是否包含汉字
 * 输入:str 字符串
 * 返回:true 或 flase; true表示包含汉字
 */
function checkChinese(str){
 if (escape(str).indexOf("%u") != -1) {
 return true;
 }
 else {
 return false;
 }
}
/**//**
 * 检查输入的邮箱格式是否正确
 * 输入:str 字符串
 * 返回:true 或 flase; true表示格式正确
 */
function checkEmail(str){
 if (str.match(/[A-Za-z0-9_-]+[@](\\S*)(net|com|cn|org|cc|tv|[0-9]{1,3})(\\S*)/g) == null) {
 return false;
 }
 else {
 return true;
 }
}
/**//**
 * 检查输入的手机号码格式是否正确
 * 输入:str 字符串
 * 返回:true 或 flase; true表示格式正确
 */
function checkMobilePhone(str){
 if (str.match(/^(?:13\\d|15[89])-?\\d{5}(\\d{3}|\\*{3})$/) == null) {
 return false;
 }
 else {
 return true;
 }
}
/**//**
 * 检查输入的固定电话号码是否正确
 * 输入:str 字符串
 * 返回:true 或 flase; true表示格式正确
 */
function checkTelephone(str){
 if (str.match(/^(([0\\+]\\d{2,3}-)?(0\\d{2,3})-)(\\d{7,8})(-(\\d{3,}))?$/) == null) {
 return false;
 }
 else {
 return true;
 }
}
/**//**
 * 检查QQ的格式是否正确
 * 输入:str 字符串
 * 返回:true 或 flase; true表示格式正确
 */
function checkQQ(str){
 if (str.match(/^\\d{5,10}$/) == null) {
 return false;
 }
 else {
 return true;
 }
}
/**//**
 * 检查输入的身份证号是否正确
 * 输入:str 字符串
 * 返回:true 或 flase; true表示格式正确
 */
function checkCard(str){
 //15位数身份证正则表达式
 var arg1 = /^[1-9]\\d{7}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d{3}$/;
 //18位数身份证正则表达式
 var arg2 = /^[1-9]\\d{5}[1-9]\\d{3}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])((\\d{4})|\\d{3}[A-Z])$/;
 if (str.match(arg1) == null && str.match(arg2) == null) {
 return false;
 }
 else {
 return true;
 }
}
/**//**
 * 检查输入的IP地址是否正确
 * 输入:str 字符串
 * 返回:true 或 flase; true表示格式正确
 */
function checkIP(str){
 var arg = /^(\\d{1,2}|1\\d\\d|2[0-4]\\d|25[0-5])\\.(\\d{1,2}|1\\d\\d|2[0-4]\\d|25[0-5])\\.(\\d{1,2}|1\\d\\d|2[0-4]\\d|25[0-5])\\.(\\d{1,2}|1\\d\\d|2[0-4]\\d|25[0-5])$/;
 if (str.match(arg) == null) {
 return false;
 }
 else {
 return true;
 }
}
/**//**
 * 检查输入的URL地址是否正确
 * 输入:str 字符串
 * 返回:true 或 flase; true表示格式正确
 */
function checkURL(str){
 if (str.match(/(http[s]?|ftp):\\/\\/[^\\/\\.]+?\\..+\\w$/i) == null) {
 return false
 }
 else {
 return true;
 }
}
/**//**
 * 检查输入的字符是否具有特殊字符
 * 输入:str 字符串
 * 返回:true 或 flase; true表示包含特殊字符
 * 主要用于注册信息的时候验证
 */
function checkQuote(str){
 var items = new Array("~", "`", "!", "@", "#", "$", "%", "^", "&", "*", "{", "}", "[", "]", "(", ")");
 items.push(":", ";", "'", "|", "\\\\", "<", ">", "?", "/", "<<", ">>", "||", "//");
 items.push("admin", "administrators", "administrator", "管理员", "系统管理员");
 items.push("select", "delete", "update", "insert", "create", "drop", "alter", "trancate");
 str = str.toLowerCase();
 for (var i = 0; i < items.length; i++) {
 if (str.indexOf(items[i]) >= 0) {
 return true;
 }
 }
 return false;
}
/**//**
 * 检查输入的一串字符是否是字符
 * 输入:str 字符串
 * 返回:true 或 flase; true表示为全部为字符 不包含汉字
 */
function checkStr(str){
 if (/[^\\x00-\\xff]/g.test(str)) {
 return false;
 }
 else {
 return true;
 }
}
/**//**
 * 检查输入的一串字符是否包含汉字
 * 输入:str 字符串
 * 返回:true 或 flase; true表示包含汉字
 */
function IsChinese(str)
{
 var reg=/^[\\u0391-\\uFFE5]+$/;
 return reg.test(str);
}
/**//**
 * 检查输入的邮箱格式是否正确
 * 输入:str 字符串
 * 返回:true 或 flase; true表示格式正确
 */
function checkEmail(str){
 if (str.match(/[A-Za-z0-9_-]+[@](\\S*)(net|com|cn|org|cc|tv|[0-9]{1,3})(\\S*)/g) == null) {
 return false;
 }
 else {
 return true;
 }
}
/**//**
 * 检查输入的手机号码格式是否正确
 * 输入:str 字符串
 * 返回:true 或 flase; true表示格式正确
 */
function checkMobile(v){ 
 var a = /^((\\(\\d{3}\\))|(\\d{3}\\-))?13\\d{9}|14[57]\\d{8}|15\\d{9}|18\\d{9}$/ ; 
 if( v.length!=11||!v.match(a) ) 
 { 
 alert("请输入正确的手机号码!"); 
 } 
 else{ 
 ; 
 } 
}
/**//**
 * 检查输入的固定电话号码是否正确
 * 输入:str 字符串
 * 返回:true 或 flase; true表示格式正确
 */
function checkTelephone(str){
 if (str.match(/^(([0\\+]\\d{2,3}-)?(0\\d{2,3})-)(\\d{7,8})(-(\\d{3,}))?$/) == null) {
 return false;
 }
 else {
 return true;
 }
}
/**//**
 * 检查输入的IP地址是否正确
 * 输入:str 字符串
 * 返回:true 或 flase; true表示格式正确
 */
function checkIP(str){
 var arg = /^(\\d{1,2}|1\\d\\d|2[0-4]\\d|25[0-5])\\.(\\d{1,2}|1\\d\\d|2[0-4]\\d|25[0-5])\\.(\\d{1,2}|1\\d\\d|2[0-4]\\d|25[0-5])\\.(\\d{1,2}|1\\d\\d|2[0-4]\\d|25[0-5])$/;
 if (str.match(arg) == null) {
 return false;
 }
 else {
 return true;
 }
}
/**//**
 * 检查输入的URL地址是否正确
 * 输入:str 字符串
 * 返回:true 或 flase; true表示格式正确
 */
function checkURL(str){
 if (str.match(/(http[s]?|ftp):\\/\\/[^\\/\\.]+?\\..+\\w$/i) == null) {
 return false
 }
 else {
 return true;
 }
}
/**//**
 * 检查输入的字符是否具有特殊字符
 * 输入:str 字符串
 * 返回:true 或 flase; true表示包含特殊字符
 * 主要用于注册信息的时候验证
 */
function checkQuote(str){
 var items = new Array("~", "`", "!", "@", "#", "$", "%", "^", "&", "*", "{", "}", "[", "]", "(", ")");
 items.push(":", ";", "'", "|", "\\\\", "<", ">", "?", "/", "<<", ">>", "||", "//");
 items.push("admin", "administrators", "administrator", "管理员", "系统管理员");
 items.push("select", "delete", "update", "insert", "create", "drop", "alter", "trancate");
 str = str.toLowerCase();
 for (var i = 0; i < items.length; i++) {
 if (str.indexOf(items[i]) >= 0) {
 return true;
 }
 }
 return false;
}

希望本文所述的JavaScript验证方法对程序设计有所帮助。

作者最新文章