js中判斷數(shù)字\字母\中文的正則表達式 (實例)
更新時間:2012年06月29日 23:35:27 作者:
js中判斷數(shù)字\字母\中文的正則表達式,需要的朋友可以參考下
/*
判斷指定的內(nèi)容是否為空,若為空則彈出 警告框
*/
function isEmpty(theValue, strMsg){
if(theValue==""){
alert(strMsg+"不能為空!");
return true;
}
return false;
}
/*
中文判斷函數(shù),允許生僻字用英文“*”代替
返回true表示是符合條件,返回false表示不符合
*/
function isChinese(str){
var badChar ="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
badChar += "abcdefghijklmnopqrstuvwxyz";
badChar += "0123456789";
badChar += " "+" ";//半角與全角空格
badChar += "www.dbjr.com.cn不包含*或.的英文符號
if(""==str){
return false;
}
for(var i=0;i var c = str.charAt(i);//字符串str中的字符
if(badChar.indexOf(c) > -1){
return false;
}
}
return true;
}
/*
數(shù)字判斷函數(shù),返回true表示是全部數(shù)字,返回false表示不全部是數(shù)字
*/
function isNumber(str){
if(""==str){
return false;
}
var reg = /\D/;
return str.match(reg)==null;
}
/*
判斷給定的字符串是否為指定長度的數(shù)字
是返回true,不是返回false
*/
function isNumber_Ex(str,len){
if(""==str){
return false;
}
if(str.length!=len){
return false;
}
if(!isNumber(str)){
return false;
}
return true;
}
/*
money判斷函數(shù),允許第一位為"-"來表示欠錢
返回true表示格式正確,返回false表示格式錯誤
*/
function isMoney(str){
if(""==str){
return false;
}
for(var i=0;i var c = str.charAt(i);
if(i==0){
if(c!="-"&&(c<"0"||c>"9")){
return false;
}else if(c=="-"&&str.length==1){
return false;
}
}else if(c < "0" || c > "9"){
return false;
}
}
return true;
}
/*
英文判斷函數(shù),返回true表示是全部英文,返回false表示不全部是英文
*/
function isLetter(str){
if(""==str){
return false;
}
for(var i=0;i var c = str.charAt(i);
if((c<"a"||c>"z")&&(c<"A"||c>"Z")){
return false;
}
}
return true;
}
/*
空格判斷,當包含有空格返回false,當不包含一個空格返回true
""不能被判斷
*/
function notInSpace(str){
if(""==str){
return false;
}
var badChar =" ";
badChar += " ";
for(var i=0;i var c = str.charAt(i);//字符串str中的字符
if(badChar.indexOf(c) > -1){
return false;
}
}
return true;
}
/*
**號判斷函數(shù),返回true表示是**號,返回false表示不符合規(guī)范
*/
function isFPH(str){
if(""==str){
return false;
}
for(var i=0;i var c = str.charAt(i);
if((c < "0" || c > "9") && (c!="-")&&(c!=",")){
return false;
}
}
return true;
}
/*
電話判斷函數(shù),允許“數(shù)字”、“;”、“-”、“(”、”)“,
true表示是電話號碼
*/
function isTelephone(str){
var trueChar = "()-;1234567890";
if(""==str){
return false;
}
for(var i=0;i var c = str.charAt(i);//字符串str中的字符
if(trueChar.indexOf(c) == -1) return false;
}
return true;
}
/**
學制可以為1-7,也可以為3.5這種形式,不能超過7年或者低于1年
*/
function isXZ(str){
if(""==str){
return false;
}
var reg = /^[1-6](\.5)?$/;
var r = str.match(reg);
if(null!=r){
return true;
}else{
if(str=="7"){
return true;
}else{
return false;
}
}
}
/*
判斷證書編號是否符合要求,證書編號包含中文、數(shù)字、大小寫字母、(、)、-
是返回true,不是返回false
*/
function isZSBH(str){
if(""==str){
return false;
}
for(var i=0;i var c = str.charAt(i);
alpha = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
alpha += "abcdefghijklmnopqrstuvwxyz";
alpha += "()-";
if(!isChinese(c)&&!isNumber(c)&&alpha.indexOf(c)==-1){
return false;
}
}
return true;
}
/*
身份證判斷函數(shù),是返回true,不是返回false
15位數(shù)字,18位數(shù)字或者最后一位為X(大寫)
*/
function isSFZ(str){
if(""==str){
return false;
}
if(str.length!=15&&str.length!=18){//身份證長度不正確
return false;
}
if(str.length==15){
if(!isNumber(str)){
return false;
}
}else{
str1 = str.substring(0,17);
str2 = str.substring(17,18);
alpha = "X0123456789";
if(!isNumber(str1)||alpha.indexOf(str2)==-1){
return false;
}
}
return true;
}
/*
得到今天的年,月,日
調(diào)用方法:today = new getToday(); 則today.year為今天的年以此類推
*/
function getToday(){
this.now = new Date();
this.year = this.now.getFullYear();
this.month = this.now.getMonth();
this.day = this.now.getDate();
}
js判斷數(shù)字,字母,中文
1.
var reg = /^(\w|[\u4E00-\u9FA5])*$/;
if(arr=username.match(reg))
{
ti=1;
return ture;
}
else
{
alert("用戶名只允許為英文,數(shù)字和漢字的混合,\n請檢查是否前后有空格或者其他符號");
ti=0;
return false;
}
2.利用正則表達式限制網(wǎng)頁表單里的文本框輸入內(nèi)容:
用正則表達式限制只能輸入中文:onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,''))"
用正則表達式限制只能輸入全角字符: onkeyup="value=value.replace(/[^\uFF00-\uFFFF]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\uFF00-\uFFFF]/g,''))"
用正則表達式限制只能輸入數(shù)字:onkeyup="value=value.replace(/[^\d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"
用正則表達式限制只能輸入數(shù)字和英文:onkeyup="value=value.replace(/[\W]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"
數(shù)字
<script>
function check()
{
if(!isNaN(document.all.form.str.value))
{
alert("數(shù)字");
}
</script>
字母
<script>
function check()
{
var str = /[_a-zA-Z]/;
if(str.test(document.all.form.str.value))
{
alert("字母");
}
}
</script>
<form name="form" action="" onsubmit="return check();">
<input type=text name=str>
<input type=submit>
<form>
---------------------------------------------------
/**
* 一些常用的javascript函數(shù)(方法)
*
* 為便于使用,均書寫成String對象的方法
* 把他保存為.js文件,可方便的擴展字符串對象的功能
*
* 方法名 功 能
* ----------- --------------------------------
* Trim 刪除首位空格
* Occurs 統(tǒng)計指定字符出現(xiàn)的次數(shù)
* isDigit 檢查是否由數(shù)字組成
* isAlpha 檢查是否由數(shù)字字母和下劃線組成
* isNumber 檢查是否為數(shù)
* lenb 返回字節(jié)數(shù)
* isInChinese 檢查是否包含漢字
* isEmail 簡單的email檢查
* isDate 簡單的日期檢查,成功返回日期對象
* isInList 檢查是否有列表中的字符字符
* isInList 檢查是否有列表中的字符字符
*/
/*** 刪除首尾空格 ***/
String.prototype.Trim = function() {
return this.replace(/(^\s*)|(\s*$)/g, "");
}
/*** 統(tǒng)計指定字符出現(xiàn)的次數(shù) ***/
String.prototype.Occurs = function(ch) {
// var re = eval("/[^"+ch+"]/g");
// return this.replace(re, "").length;
return this.split(ch).length-1;
}
/*** 檢查是否由數(shù)字組成 ***/
String.prototype.isDigit = function() {
var s = this.Trim();
return (s.replace(/\d/g, "").length == 0);
}
/*** 檢查是否由數(shù)字字母和下劃線組成 ***/
String.prototype.isAlpha = function() {
return (this.replace(/\w/g, "").length == 0);
}
/*** 檢查是否為數(shù) ***/
String.prototype.isNumber = function() {
var s = this.Trim();
return (s.search(/^[+-]?[0-9.]*$/) >= 0);
}
/*** 返回字節(jié)數(shù) ***/
String.prototype.lenb = function() {
return this.replace(/[^\x00-\xff]/g,"**").length;
}
/*** 檢查是否包含漢字 ***/
String.prototype.isInChinese = function() {
return (this.length != this.replace(/[^\x00-\xff]/g,"**").length);
}
/*** 簡單的email檢查 ***/
String.prototype.isEmail = function() {
var strr;
var mail = this;
var re = /(\w+@\w+\.\w+)(\.{0,1}\w*)(\.{0,1}\w*)/i;
re.exec(mail);
if(RegExp.$3!="" && RegExp.$3!="." && RegExp.$2!=".")
strr = RegExp.$1+RegExp.$2+RegExp.$3;
else
if(RegExp.$2!="" && RegExp.$2!=".")
strr = RegExp.$1+RegExp.$2;
else
strr = RegExp.$1;
return (strr==mail);
}
/*** 簡單的日期檢查,成功返回日期對象 ***/
String.prototype.isDate = function() {
var p;
var re1 = /(\d{4})[年./-](\d{1,2})[月./-](\d{1,2})[日]?$/;
var re2 = /(\d{1,2})[月./-](\d{1,2})[日./-](\d{2})[年]?$/;
var re3 = /(\d{1,2})[月./-](\d{1,2})[日./-](\d{4})[年]?$/;
if(re1.test(this)) {
p = re1.exec(this);
return new Date(p[1],p[2],p[3]);
}
if(re2.test(this)) {
p = re2.exec(this);
return new Date(p[3],p[1],p[2]);
}
if(re3.test(this)) {
p = re3.exec(this);
return new Date(p[3],p[1],p[2]);
}
return false;
}
/*** 檢查是否有列表中的字符字符 ***/
String.prototype.isInList = function(list) {
var re = eval("/["+list+"]/");
return re.test(this);
}
判斷指定的內(nèi)容是否為空,若為空則彈出 警告框
*/
function isEmpty(theValue, strMsg){
if(theValue==""){
alert(strMsg+"不能為空!");
return true;
}
return false;
}
/*
中文判斷函數(shù),允許生僻字用英文“*”代替
返回true表示是符合條件,返回false表示不符合
*/
function isChinese(str){
var badChar ="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
badChar += "abcdefghijklmnopqrstuvwxyz";
badChar += "0123456789";
badChar += " "+" ";//半角與全角空格
badChar += "www.dbjr.com.cn不包含*或.的英文符號
if(""==str){
return false;
}
for(var i=0;i var c = str.charAt(i);//字符串str中的字符
if(badChar.indexOf(c) > -1){
return false;
}
}
return true;
}
/*
數(shù)字判斷函數(shù),返回true表示是全部數(shù)字,返回false表示不全部是數(shù)字
*/
function isNumber(str){
if(""==str){
return false;
}
var reg = /\D/;
return str.match(reg)==null;
}
/*
判斷給定的字符串是否為指定長度的數(shù)字
是返回true,不是返回false
*/
function isNumber_Ex(str,len){
if(""==str){
return false;
}
if(str.length!=len){
return false;
}
if(!isNumber(str)){
return false;
}
return true;
}
/*
money判斷函數(shù),允許第一位為"-"來表示欠錢
返回true表示格式正確,返回false表示格式錯誤
*/
function isMoney(str){
if(""==str){
return false;
}
for(var i=0;i var c = str.charAt(i);
if(i==0){
if(c!="-"&&(c<"0"||c>"9")){
return false;
}else if(c=="-"&&str.length==1){
return false;
}
}else if(c < "0" || c > "9"){
return false;
}
}
return true;
}
/*
英文判斷函數(shù),返回true表示是全部英文,返回false表示不全部是英文
*/
function isLetter(str){
if(""==str){
return false;
}
for(var i=0;i var c = str.charAt(i);
if((c<"a"||c>"z")&&(c<"A"||c>"Z")){
return false;
}
}
return true;
}
/*
空格判斷,當包含有空格返回false,當不包含一個空格返回true
""不能被判斷
*/
function notInSpace(str){
if(""==str){
return false;
}
var badChar =" ";
badChar += " ";
for(var i=0;i var c = str.charAt(i);//字符串str中的字符
if(badChar.indexOf(c) > -1){
return false;
}
}
return true;
}
/*
**號判斷函數(shù),返回true表示是**號,返回false表示不符合規(guī)范
*/
function isFPH(str){
if(""==str){
return false;
}
for(var i=0;i var c = str.charAt(i);
if((c < "0" || c > "9") && (c!="-")&&(c!=",")){
return false;
}
}
return true;
}
/*
電話判斷函數(shù),允許“數(shù)字”、“;”、“-”、“(”、”)“,
true表示是電話號碼
*/
function isTelephone(str){
var trueChar = "()-;1234567890";
if(""==str){
return false;
}
for(var i=0;i var c = str.charAt(i);//字符串str中的字符
if(trueChar.indexOf(c) == -1) return false;
}
return true;
}
/**
學制可以為1-7,也可以為3.5這種形式,不能超過7年或者低于1年
*/
function isXZ(str){
if(""==str){
return false;
}
var reg = /^[1-6](\.5)?$/;
var r = str.match(reg);
if(null!=r){
return true;
}else{
if(str=="7"){
return true;
}else{
return false;
}
}
}
/*
判斷證書編號是否符合要求,證書編號包含中文、數(shù)字、大小寫字母、(、)、-
是返回true,不是返回false
*/
function isZSBH(str){
if(""==str){
return false;
}
for(var i=0;i var c = str.charAt(i);
alpha = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
alpha += "abcdefghijklmnopqrstuvwxyz";
alpha += "()-";
if(!isChinese(c)&&!isNumber(c)&&alpha.indexOf(c)==-1){
return false;
}
}
return true;
}
/*
身份證判斷函數(shù),是返回true,不是返回false
15位數(shù)字,18位數(shù)字或者最后一位為X(大寫)
*/
function isSFZ(str){
if(""==str){
return false;
}
if(str.length!=15&&str.length!=18){//身份證長度不正確
return false;
}
if(str.length==15){
if(!isNumber(str)){
return false;
}
}else{
str1 = str.substring(0,17);
str2 = str.substring(17,18);
alpha = "X0123456789";
if(!isNumber(str1)||alpha.indexOf(str2)==-1){
return false;
}
}
return true;
}
/*
得到今天的年,月,日
調(diào)用方法:today = new getToday(); 則today.year為今天的年以此類推
*/
function getToday(){
this.now = new Date();
this.year = this.now.getFullYear();
this.month = this.now.getMonth();
this.day = this.now.getDate();
}
js判斷數(shù)字,字母,中文
1.
var reg = /^(\w|[\u4E00-\u9FA5])*$/;
if(arr=username.match(reg))
{
ti=1;
return ture;
}
else
{
alert("用戶名只允許為英文,數(shù)字和漢字的混合,\n請檢查是否前后有空格或者其他符號");
ti=0;
return false;
}
2.利用正則表達式限制網(wǎng)頁表單里的文本框輸入內(nèi)容:
用正則表達式限制只能輸入中文:onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,''))"
用正則表達式限制只能輸入全角字符: onkeyup="value=value.replace(/[^\uFF00-\uFFFF]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\uFF00-\uFFFF]/g,''))"
用正則表達式限制只能輸入數(shù)字:onkeyup="value=value.replace(/[^\d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"
用正則表達式限制只能輸入數(shù)字和英文:onkeyup="value=value.replace(/[\W]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"
數(shù)字
<script>
function check()
{
if(!isNaN(document.all.form.str.value))
{
alert("數(shù)字");
}
</script>
字母
<script>
function check()
{
var str = /[_a-zA-Z]/;
if(str.test(document.all.form.str.value))
{
alert("字母");
}
}
</script>
<form name="form" action="" onsubmit="return check();">
<input type=text name=str>
<input type=submit>
<form>
---------------------------------------------------
/**
* 一些常用的javascript函數(shù)(方法)
*
* 為便于使用,均書寫成String對象的方法
* 把他保存為.js文件,可方便的擴展字符串對象的功能
*
* 方法名 功 能
* ----------- --------------------------------
* Trim 刪除首位空格
* Occurs 統(tǒng)計指定字符出現(xiàn)的次數(shù)
* isDigit 檢查是否由數(shù)字組成
* isAlpha 檢查是否由數(shù)字字母和下劃線組成
* isNumber 檢查是否為數(shù)
* lenb 返回字節(jié)數(shù)
* isInChinese 檢查是否包含漢字
* isEmail 簡單的email檢查
* isDate 簡單的日期檢查,成功返回日期對象
* isInList 檢查是否有列表中的字符字符
* isInList 檢查是否有列表中的字符字符
*/
/*** 刪除首尾空格 ***/
String.prototype.Trim = function() {
return this.replace(/(^\s*)|(\s*$)/g, "");
}
/*** 統(tǒng)計指定字符出現(xiàn)的次數(shù) ***/
String.prototype.Occurs = function(ch) {
// var re = eval("/[^"+ch+"]/g");
// return this.replace(re, "").length;
return this.split(ch).length-1;
}
/*** 檢查是否由數(shù)字組成 ***/
String.prototype.isDigit = function() {
var s = this.Trim();
return (s.replace(/\d/g, "").length == 0);
}
/*** 檢查是否由數(shù)字字母和下劃線組成 ***/
String.prototype.isAlpha = function() {
return (this.replace(/\w/g, "").length == 0);
}
/*** 檢查是否為數(shù) ***/
String.prototype.isNumber = function() {
var s = this.Trim();
return (s.search(/^[+-]?[0-9.]*$/) >= 0);
}
/*** 返回字節(jié)數(shù) ***/
String.prototype.lenb = function() {
return this.replace(/[^\x00-\xff]/g,"**").length;
}
/*** 檢查是否包含漢字 ***/
String.prototype.isInChinese = function() {
return (this.length != this.replace(/[^\x00-\xff]/g,"**").length);
}
/*** 簡單的email檢查 ***/
String.prototype.isEmail = function() {
var strr;
var mail = this;
var re = /(\w+@\w+\.\w+)(\.{0,1}\w*)(\.{0,1}\w*)/i;
re.exec(mail);
if(RegExp.$3!="" && RegExp.$3!="." && RegExp.$2!=".")
strr = RegExp.$1+RegExp.$2+RegExp.$3;
else
if(RegExp.$2!="" && RegExp.$2!=".")
strr = RegExp.$1+RegExp.$2;
else
strr = RegExp.$1;
return (strr==mail);
}
/*** 簡單的日期檢查,成功返回日期對象 ***/
String.prototype.isDate = function() {
var p;
var re1 = /(\d{4})[年./-](\d{1,2})[月./-](\d{1,2})[日]?$/;
var re2 = /(\d{1,2})[月./-](\d{1,2})[日./-](\d{2})[年]?$/;
var re3 = /(\d{1,2})[月./-](\d{1,2})[日./-](\d{4})[年]?$/;
if(re1.test(this)) {
p = re1.exec(this);
return new Date(p[1],p[2],p[3]);
}
if(re2.test(this)) {
p = re2.exec(this);
return new Date(p[3],p[1],p[2]);
}
if(re3.test(this)) {
p = re3.exec(this);
return new Date(p[3],p[1],p[2]);
}
return false;
}
/*** 檢查是否有列表中的字符字符 ***/
String.prototype.isInList = function(list) {
var re = eval("/["+list+"]/");
return re.test(this);
}
您可能感興趣的文章:
相關(guān)文章
解讀TypeScript與JavaScript的區(qū)別
這篇文章主要介紹了TypeScript與JavaScript的區(qū)別及說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-12-12JS Array.from()將偽數(shù)組轉(zhuǎn)換成數(shù)組的方法示例
這篇文章主要介紹了JS Array.from()將偽數(shù)組轉(zhuǎn)換成數(shù)組的方法示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-03-03JavaScript幾種常見循環(huán)遍歷使用和區(qū)別
這篇文章主要介紹了JavaScript幾種常見循環(huán)遍歷使用和區(qū)別,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下2022-09-09在iframe里的頁面編寫js,實現(xiàn)在父窗口上創(chuàng)建動畫效果展開和收縮的div(不變動iframe父窗口代碼)
在iframe里的頁面編寫js,實現(xiàn)在父窗口上創(chuàng)建動畫效果展開和收縮的div(不變動iframe父窗口代碼)2011-12-12httpclient模擬登陸具體實現(xiàn)(使用js設(shè)置cookie)
最簡單的方法就是通過得到的cookie定制一個httpclient,感興趣的朋友可以了解下本文2013-12-12JS實現(xiàn)金額轉(zhuǎn)換(將輸入的阿拉伯數(shù)字)轉(zhuǎn)換成中文的實現(xiàn)代碼
這篇文章介紹了JS實現(xiàn)金額轉(zhuǎn)換(將輸入的阿拉伯數(shù)字)轉(zhuǎn)換成中文的實現(xiàn)代碼,有需要的朋友可以參考一下,希望對大家有用2013-09-09詳解微信小程序(Taro)手動埋點和自動埋點的實現(xiàn)
這篇文章主要介紹了詳解微信小程序(Taro)手動埋點和自動埋點的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2021-03-03