vue中input輸入框常用正則


1. input中只能輸入數字 0-9
 
 

 

 

 
 
 
<el-input
                  v-model.trim="form.銀行賬號"
                  placeholder="請輸入"
                  style="width: 200px;"
                   @input="inputChange"
                ></el-input>
 
inputChange() {
      this.form.銀行賬號 = this.form.銀行賬號 .replace(/[^\d]/g, '')      // 或者寫成  /[^0-9]/g
    }
 
2. 去除空格

 

 把獲取的input框中的值的空格去掉

let text = el.currentTarget.innerText.replace(/\s+/g, '')    // + 表示1個或多個空格
 
3.  清除“數字”和“.”以外的字符

 'ss(ini123.ssss'.replace(/[^\d.]/g,'')    // 結果是"123."

4.第一個數是.就替換成空字符串

".1213.22323".replace(/^\./g, '')   // 結果:"1213.22323"

5.把最后的.都去掉

  // 0次或多次

 

'瑟瑟發抖.....'.replace(/\.*$/g,'')   // "瑟瑟發抖"

'瑟瑟發抖.....'.replace(/\.*$/g,'.')   // "瑟瑟發抖."  // 只保留一個點

"sfassadfs....sfsadfsa....".replace(/\.{2,}/g, '.')    //  只保留一個點,清除多余的

"......sss....sss...ssss...ssss".replace(/\./g, '')  // 把所有點都清除

6.匹配正整數或正小數

/^\d+(\.{0,1}\d+){0,1}$/           /^[0-9]+([.]{1}[0-9]{1,2})?$/  這個比較靠譜小數是0位或者1位
7. 匹配11位手機號
/^[1]+[0-9]{10}$/
8. 匹配固定電話
/^0\d{2,3}-\d{7,8}$/
9. 港澳居民來往內地通行證號碼
/^[0-9a-zA-Z][-]{1}[0-9]{6}[-]{1}\([0-9a-zA-Z]\)$/
10. 文件名只能包含中文、英文、數字包括下划線
/^[\u4E00-\u9FA5A-Za-z0-9_.]+$/
11. 條形碼要求大寫字母、數字
/^[0-9A-Z]+$/
12. 匹配正整數不包括0
/^[1-9]\d*$/
13. 匹配正整數包括0
/^\d+$/
 
匹配0-20位的中文
/^[\u4e00-\u9fa5]{0,20}$/

 

 

正則校驗金額,整數8位,小數3位。

網上太多了,但是錯誤的太多,只能自己去寫。

^[1-9]\d{0,7}(\.\d{1,3})?$|^0(\.\d{1,3})?$    允許輸入整數8位,小數3位的金額!不能輸入0開頭的整數,如:0100

 

解析:

^     匹配字符串的開始

[1-9]  [ ] 表示區間,表示找到一個位置上的字符只能是1到9這四個數字

\d      匹配數字

{0,7}    { }一般是用來匹配的長度. 匹配是0~7位的數字. 因為起頭我們默認了1-9隨機所有加上后面最大值7就是限制8位數。

()      () 是為了提取匹配字符串的,表達式中有幾個()就有幾個相應的匹配字符串

\.    . 本身是元字符,我們需要小數點字符串就需要轉義就要加上 \ 就變成 \.

{1,3}     匹配1~3位的值

 

正則用下面3個可替換有不同效果

?    重復零次或一次          100 -true     100.12 -true      100.12.12 -false

*    重復零次或更多次                100 -true      100.12 -true      100.12.12 -true

+      重復一次或更多次      100 -false      100.12 -true     100.12.12 -true

 

|      正則用符號 | 來表示或,也叫做分支條件,當滿足正則里的分支條件的任何一種條件時,都會當成是匹配成功

^0   開頭值為0

&    匹配字符串的結束

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM