注:
/^ 和 $/成對使用應該是表示要求整個字元串完全比對定義的規則,而不是隻比對字元串中的一個子串。
解釋幾個重要的符号 * + ?
^代表:比對輸入字元串的開始位置,除非在方括号表達式中使用,此時它表示不接受該字元集合。要比對 ^ 字元本身,請使用 \^
$代表:比對輸入字元串的結尾位置。如果設定了 RegExp 對象的 Multiline 屬性,則 $ 也比對 '\n' 或 '\r'。要比對身,請使用 \$。
*代表:0次或者多次
+代表:1次或者多次
?代表:0次或者1次
//驗證金錢,允許整數或者兩位小數
var reg =/^\d+(\.\d{2})?$/;
//隻能用中文
var reg =/^[\u4E00-\u9FA5]$/;
//隻能輸入5位數字
var reg =/^[0-9]{5,5}$/;
//隻能用中文 1-5個字元
var reg =/^[\u4E00-\u9FA5]{1,5}$/;
//隻能用大寫英文2-5個字元
var reg =/^[A-Z]{2,5}$/;
//隻能輸入數字和特殊字元- 11-12位。
var reg =/^[0-9 -]{11,12}$/;
//隻能用中文、英文 1-20個字元
var reg = /^[\u4e00-\u9fa5a-zA-Z]{1,20}$/ ;
//隻能用中文、英文、數字和特殊字元.- 1-20個字元
var reg = /^[\u4e00-\u9fa5a-zA-Z0-9.-]{1,20}$/ ;
//5-20個以字母開頭的字元 可含數字和特殊字元_
var reg = /^[a-zA-Z]{1}([a-zA-Z0-9]|[_]){4,19}$/;
//隻能用中文、英文和特殊字元. · 不能同時為中英文。
/^(?!\s+$)[\u4E00-\u9FA0.·]+$|^[a-z.·]+$/i
//手機号
var reg = /^0*(13|14|15|17|18)\d{9}$/;
//郵箱
var reg = /^([a-zA-Z0-9]+[_|\-|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\-|\.]?)*[a-zA-Z0-9]+
\.[a-zA-Z]{2,3}$/;
js組合運用:
例1:普通固話或者400、800電話或者5位數号碼(例:10086、95599)
isPhone = /^((0\d{2,3})-)(\d{7,8})$/.test(tel); //普通固話
is400=/^\d{3}-\d{3,4}-\d{3,4}$/.test(tel);//400、800固話。400-888-6666 或 400-6666-888
is5 =/^[0-9]{5,5}$/.test(tel);//5五位數号碼,例:10086、95599
if (isPhone||is400||is5) { }
本文轉自 藝晨光 51CTO部落格,原文連結:http://blog.51cto.com/ycgit/1617301,如需轉載請自行聯系原作者