前端傳參,調用接口
將兩個值都傳給后端,做比較,符合條件,修改數據表中另一個字段值
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 (result0){
sysEntity.setIfRise("0");
} else if (result==0) {
sysEntity.setIfRise("2");
}
}
return this.baseMapper.updateByIds(sysTargetEntity);
}
正則
整數或者小數:^[0-9]+\.{0,1}[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正則表達式判斷前端參數內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- java基于正則表達式實現時間日期的常用判斷操作實例
- Java使用正則表達式判斷字符串是否以字符開始
- Java正則表達式判斷字符串中是否包含中文示例
- 詳解Java判斷是否是整數,小數或實數的正則表達式
- java使用正則表達式判斷郵箱格式是否正確的方法