Ⅰ js 用正則表達式驗證只允許輸入數字,或者是數字後兩位小數點,如何寫
只能輸入或粘貼純數字的:
<input onkeyup="value=value.replace(/[^d]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^d]/g,''))">
Ⅱ js 求英語和數字混合的正則表達式
可以使用js的reg正則實現英語和數字混合的正則表達式。
具體步驟如下:
需要准備的材料分別是:電腦、瀏覽器、ultraedit。
1、在ue編輯器中新建一個空白的html文件,js文件。
(2)javascript正則數字擴展閱讀
JavaScript是一種腳本語言,其源代碼在發往客戶端運行之前不需經過編譯,而是將文本格式的字元代碼發送給瀏覽器由瀏覽器解釋運行。
直譯語言的弱點是安全性較差,而且在JavaScript中,如果一條運行不了,那麼下面的語言也無法運行。而其解決辦法就是於使用try{}catch(){}︰
console.log("a");//這是正確的
console.log("b");//這是正確的
console.logg("c");//這是錯誤的,並且到這里會停下來
console.log("d");//這是正確的
console.log("e");//這是正確的
/*解決辦法*/
try{console.log("a");}catch(e){}//這是正確
try{console.log("b");}catch(e){}//這是正確的
try{console.logg("c");}catch(e){}//這是錯誤的,但是到這里不會停下來,而是跳過
try{console.log("d");}catch(e){}//這是正確的
try{console.log("e");}catch(e){}//這是正確的
Javascript被歸類為直譯語言,因為主流的引擎都是每次運行時載入代碼並解譯。
V8是將所有代碼解譯後再開始運行,其他引擎則是逐行解譯(SpiderMonkey會將解譯過的指令暫存,以提高性能,稱為實時編譯),但由於V8的核心部分多數用Javascript撰寫(而SpiderMonkey是用C++),因此在不同的測試上,兩者性能互有優劣。
與其相對應的是編譯語言,例如C語言,以編譯語言編寫的程序在運行之前,必須經過編譯,將代碼編譯為機器碼,再加以運行。
Ⅲ 用js的正則表達式檢測電話號碼,要求,必須是1開頭,只能是數字,並且是11位數字,這兒正則表達式怎麼寫
正則表達式:/^1d{10}$/
答案演示:
表達式意思解析:
(1)以1為開頭;
(2)d表示數字,d{10}表示出現10次數字;
(3)$表示結尾,即匹配輸入字元串的結尾位置;
(4)根據(1)、(2)、(3),正好表示11位數字
(3)javascript正則數字擴展閱讀:
更嚴格的電話號碼校驗正則表達式:
(1)/^1(3|4|5|7|8)d{9}$/ ,這個表達式才是真正有效的電話號碼的正則表達式,表示必須以1做開頭,第二位可以是3,4,5,7,8,中的任意一位,後面9位數字可以是0-9任意數字。
身份證的校驗正則表達式:
(1)(^d{15}$)|(^d{17}([0-9]|X)$),表示匹配15位或18位身份證,且可以匹配出以X結尾的身份證號碼。
參考資料來源:網路-正則表達式
Ⅳ js正則匹配數字或者"."
你好,
首先呢,正則是非常靈活的,所以校驗也要分等級。
從嚴格角度來看,可以這么分析,從版本格式來考慮,其實不推薦限制長度,如下格式:
a.b(eg: 1.0, 1.100, 甚至 1.1000)
a.b.c (eg: 1.1.1, 1.12.1, 甚至 1.121.1)
如果再允許整數版本,還可以增加一個
a(其實也是可能>5位的嘛)
根據以上分析,可以使用「或」連接三種規則,合並生成一個正則表達式:
//不限長度版本
varrVersion=/^d+$|^d+.d+$|^d+(.d+){1,2}$/;
//限制長度(每一位版本號應該是一位數)
//varrVersion=/^d$|^d.d$|^d(.d){1,2}$/;
現在來驗證下:
varcaseOne='1';
varcaseTwo='1.1';
varcaseThree='1.2.1';
varerrorCase='1..2';
console.log(rVersion.test(caseOne));//true
console.log(rVersion.test(caseTwo));//true
console.log(rVersion.test(caseThree));//true
console.log(rVersion.test(errorCase));//false
//增加一個多位校驗
console.log(rVersion.test('1.12.1'));//true
//但是這種就不行了
console.log(rVersion.test('1.1.2.1'));//false
//如果rVersion=/^d$|^d.d$|^d(.d){1,2}$/;
//那麼'1.12.1'這個也通不過
console.log(/^d$|^d.d$|^d(.d){1,2}$/.test('1.12.1'));//false
好了,大概就這么多,根據你的情況取捨吧。
希望能解決你的問題,望採納。如有疑問可追問~~
Ⅳ js正則表達式怎麼取出個字元串中的所有數字,急急急
對於字元s,利用正則匹配 :varnum=s.replace(/[^-9]/ig,"")。
Ⅵ js正則表達式驗證數字大於15小於200
正則表達式如下:/^1[6-9]$|^[2-9]\d$|^1\d{2}$/。
^符號表示字元串的開頭,^1表示字元串的第一個源字元是1
$100符號表示字元串的結束
符號表示一組字元,即位置匹配[]中的任何字元,[6-9]表示字元可以是6、7、8或9中的任何字元。類似地,[2-9]表示2~9中的任何字元
\d匹配0到9之間的任何數字和任何字元
{2}表示之前匹配的字元數為2,\d{2}表示匹配的字元數為2
|表示or的關系,如果任何一個表達式匹配,則整個表達式都匹配
^1[6-9]$匹配2位數字,第1位是1,第2位是6~9,即度匹配16~19
^[2-9]\d$匹配2位數字,第一個是2~9,第二個是任意數字,即匹配20~99
^1\d{2}$匹配3位數字,第1位是1,後2位是任意數字,即匹配100~199
(6)javascript正則數字擴展閱讀:
規則表系統由一些普通的位字元和一些元字元組成。普通字元包括大寫字母、小寫字母和數字,而元字元有特殊的含義,我們將在下面解釋。
在其最簡單的形式中,正則表達式看起來像一個普通的查找字元串。例如,正則表達式「testing」不包含元字元;它可以匹配字元串「testing」和「testing123」,但不能匹配「testing」。
理解元字元是真正使用正則表達式的最重要的事情。
Ⅶ 用javascript正則表達式怎麼判斷 數字和符號
var re=/^\d+-\d+-\d+$/
\d表示數字
+表示\d的數量1個或多個
-表示匹配 '-'