A. js 怎麼切換中英文的js
你這種設計的話應該是js點擊切換鏈接之後,給當前頁面地址附加一個參數,然後刷新,伺服器端根據這個參數決定載入哪個js
B. 【總結】js正則表達式及驗證函數
用戶名或昵稱 : ^[\u4e00-\u9fa5A-Za-z0-9-_]*$——只能中英文,數字,下劃線,減號
用戶密碼: ^[a-zA-Z]\w{5,17}$ 正確格式為——以字母開頭,長度在6-18之間,只能包含字元、數字和下劃線。
漢字 :^[\u4e00-\u9fa5],{0,}$
Email地址 :^\w+[-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$
IP地址 :^(\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])){3}$
日期 格式是否為YYYY-MM-DD:^\d{4}-(0?[1-9]|1[0-2])-(0?[1-9]|[1-2]\d|3[0-1])$/;
時間 格式是否為hh:mm:ss:^([0-1]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$
InternetURL :^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$ ;^[a-zA-z]+://(w+(-w+)*)(.(w+(-w+)*))*(?S*)?$
^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$
電話號碼 :^(\(\d{3,4}\)|\d{3,4}-)?\d{7,8}$——正確格式為:XXXX-XXXXXXX,XXXX-XXXXXXXX,XXX-XXXXXXX,XXX-XXXXXXXX,XXXXXXX,XXXXXXXX。
^((\(\d{2,3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}(\-\d{1,4})?$
手機號碼 :^0?(13[0-9]|15[012356789]|18[0236789]|14[57])[0-9]{8}$:打長途時一般要在手機號碼前加0。
身份證號 (15位或18位數字):^\d{15}(\d{2}[A-Za-z0-9])?$
qq號碼 : /^[1-9]\d{4,8}$/
驗證是否含有 ^%&',;=?$\" 等字元:[^%&',;=?$\x22]+
驗證一年的12個月:^(0?[1-9]|1[0-2])$ 正確格式為:「01」-「09」和「1」「12」
驗證一個月的31天:^((0?[1-9])|((1|2)[0-9])|30|31)$ 正確格式為:01、09和1、31。
驗證數字:^[0-9]*$
驗證n位的數字:^\d{n}$
驗證至少n位數字:^\d{n,}$
驗證m-n位的數字:^\d{m,n}$
驗證零和非零開頭的數字:^(0|[1-9][0-9]*)$
驗證有兩位小數的正實數:^[0-9]+(.[0-9]{2})?$
驗證有1-3位小數的正實數:^[0-9]+(.[0-9]{1,3})?$
驗證非零的正整數:^\+?[1-9][0-9]*$
驗證非零的負整數:^\-[1-9][0-9]*$
驗證非負整數(正整數 + 0) ^\d+$
驗證非正整數(負整數 + 0) ^((-\d+)|(0+))$
驗證長度為3的字元:^.{3}$
驗證由26個英文字母組成的字元串:^[A-Za-z]+$
驗證由26個大寫英文字母組成的字元串:^[A-Z]+$
驗證由26個小寫英文字母組成的字元串:^[a-z]+$
驗證由數字和26個英文字母組成的字元串:^[A-Za-z0-9]+$
驗證由數字、26個英文字母或者下劃線組成的字元串:^\w+$
整數:^-?\d+$
非負浮點數(正浮點數 + 0):^\d+(\.\d+)?$
正浮點數: ^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$
非正浮點數(負浮點數 + 0):^((-\d+(\.\d+)?)|(0+(\.0+)?))$
負浮點數: ^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$
浮點數 :^(-?\d+)(\.\d+)?$
雙精度:^[-\+]?\d+(\.\d+)?$
//判斷輸入的字元是否為中文
function IsChinese(){
var str = document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^[\u0391-\uFFE5]+$/;
if(!reg.test(str)){
alert("對不起,您輸入的字元串類型格式不正確!");
}
}
}
//判斷輸入的數字不大於某個特定的數字
function MaxValue(){
var val = document.getElementById('str').value.trim();
if(str.length!=0){
reg=/^[-+]?\d*$/;
if(!reg.test(str)){//判斷是否為數字類型
if(val>parseInt('123')){//「123」為自己設定的最大值
alert('對不起,您輸入的數字超出范圍');
}
}
}
}
//為上面提供各個JS驗證方法提供.trim()屬性
String.prototype.trim=function(){
return this.replace(/(^\s*)|(\s*$)/g, "");
}
var patterms = newObject();
//驗證IP
patterms.ip = /^(\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])){3}$/;
//驗證EMAIL
patterms.email = /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/;
//驗證函數
functionverify(str,pat){
var thePat = patterms[pat];
if(thePat.test(str)){
return true;
}else{
return false;
}
}
//測試alert(verify("[email protected]","email")+","+verify("192.168.1.1","ip")+","+verify("192.168","ip"));
本文摘自: js正則表達式驗證大全
C. 用js查找中文字元串位置
indexOf('中文字元串')
如果結果為-1,則沒有該字元串;如果結果大於等於0,則該整數就是字元串的位置
D. 跪求JS正則:只能輸入中文5個字以內或者英文10個字母以內
提供個思路,不過不是用正則:
寫個js函數來判斷:
該函數基於如下事實:
js字元串以unicode編碼,回計算長度答時中英文是無差異的
大寫英文字母unicode范圍為0x41-0x5a,小寫英文字母範圍為:0x61-0x7a
中文unicode范圍為:0x4E00-0x9FA5參考地址
函數主題思路為判斷長度是否符合要求,判斷第一個字元是在英文范圍還是中文范圍,遍歷之後所有字元,英文字元開頭的中間出現非英文字元則不符合要求;中文判斷同理。
函數實現主要依託charCodeAt函數,該函數返回字元的對應unicode值,可基於此判斷是否為中文或英文,該函數簡單例子:字元串str,則str.charCodeAt(0)即為第一個字元的unicode值
E. JS中怎麼用正則檢測「非中英文數字的符號字元」呢
要解決這個問題,
剛好上一篇可以用到:《在javascript中怎樣用正則表達式判斷中文字元呢?內》
結合檢測中文字元的正容則表達式,
以及匹配英文、數字字元的正則表達式,
就可以得出能匹配非中英文數字的符號字元(當然也包括其他語言國家的字元)的正則表達式為:
/[^\u4e00-\u9fa5a-zA-Z0-9]/ig
F. 怎麼用js正則驗證文本框只能輸入中文和英文
--------------------------
/**
*只包含中文和英文
*@paramcs
*@returns{Boolean}
*/
functionisGbOrEn(value){
varregu="^[a-zA-Zu4e00-u9fa5]+$";
varre=newRegExp(regu);
if(value.search(re)!=-1){
returntrue;
}else{
returnfalse;
}
}
---------------------
作者: 董先生
來源:CSDN
原文:https://blog.csdn.net/qq6759/article/details/88118913
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!