java正則表示式判斷前端引數修改表中另一個欄位的值
阿新 • • 發佈:2020-12-22
前端傳參,呼叫介面
將兩個值都傳給後端,做比較,符合條件,修改資料表中另一個欄位值
init (id) { this.dataForm.id = id || 0 this.visible = true this.$nextTick(() => { this.$refs['dataForm'].resetFields() if (this.dataForm.id) { this.$http({ url: this.$http.adornUrl(`/這裡是介面/${this.dataForm.id}`),method: 'get',params: this.$http.adornParams() }).then(({data}) => { if (data && data.code === 0) { // 把這兩個值傳入後端 this.dataForm.nowYear = data.sys.nowYear this.dataForm.nowYearStatus = data.sys.nowYearStatus } }) } }) },
後端程式碼
public int updateById(SysEntity sysEntity) { // 要驗證的字串 前端接收的引數 String str = sysEntity.getNowYear(); // 正則表示式規則 漢字 String regEx = "^[\\u4e00-\\u9fa5]{0,}$"; // 正則表示式規則 整數或者小數 String regExNum = "^[0-9]+\\.{0,1}[0-9]{0,2}$"; // 編譯正則表示式 Pattern pattern = Pattern.compile(regEx); Pattern patternNum = Pattern.compile(regExNum); Matcher matcher = pattern.matcher(str); Matcher matcherNum = patternNum.matcher(str); // 查詢字串中是否有匹配正則表示式的字元/字串 boolean rs = matcher.find(); boolean rsNum = matcherNum.find(); if (rs == true) { //是否上升,1高於,0小於,2等於 // 判斷 符合條件修改IfRise的值 sysTargetEntity.setIfRise("2"); } if (rsNum==true) { // 現狀值和目標值相比 現狀>目標就是1 // 接收的兩個引數相比較 int result = sysEntity.getNowYearStatus().compareTo(sysEntity.getNowYear()); if (result>0) { // 是否上升,1高於,0小於,2等於 sysEntity.setIfRise("1"); } else if (result<0){ sysEntity.setIfRise("0"); } else if (result==0) { sysEntity.setIfRise("2"); } } return this.baseMapper.updateByIds(sysTargetEntity); }
正則
整數或者小數:^[0-9]+\.{0,2}$
只能輸入數字:"^[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"*$。
只能輸入長度為3的字元:"^.{3}$"。只能輸入由26個英文字母組成的字串:"^[A-Za-z]+$"。
只能輸入由26個大寫英文字母組成的字串:"^[A-Z]+$"。
只能輸入由26個小寫英文字母組成的字串:"^[a-z]+$"。
只能輸入由數字和26個英文字母組成的字串:"^[A-Za-z0-9]+$"。
只能輸入由數字、26個英文字母或者下劃線組成的字串:"^\w+$"。
驗證使用者密碼:"^[a-zA-Z]\w{5,17}$"正確格式為:以字母開頭,長度在6~18之間,只能包含字元、數字和下劃線。
驗證是否含有^%&',;=?$\"等字元:"[^%&',;=?$\x22]+"。
只能輸入漢字:"^[\u4e00-\u9fa5]{0,}$"
驗證Email地址:"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$"。
驗證InternetURL:"^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$"。
驗證電話號碼:"^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$"正確格式為:"XXX-XXXXXXX"、"XXXX-XXXXXXXX"、"XXX-XXXXXXX"、"XXX-XXXXXXXX"、"XXXXXXX"和"XXXXXXXX"。
驗證身份證號(15位或18位數字):"^\d{15}|\d{18}$"。
驗證一年的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"。
匹配中文字元的正則表示式: [\u4e00-\u9fa5]
匹配雙位元組字元(包括漢字在內):[^\x00-\xff]
到此這篇關於java正則表示式判斷前端引數修改表中另一個欄位的值的文章就介紹到這了,更多相關java正則表示式判斷前端引數內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!