如何在JQuery中使用regex (field $)向字符串变量添加整数

How to add an integer to a string variable using regex (field $) in JQuery?

本文关键字:字符串 变量 整数 添加 field JQuery regex      更新时间:2023-09-26

我有一个正常工作的jquery代码,但我想在一个加法操作中使用字符串变量。

有我的jquery代码:

var valueName1 = $("#Name1").val();
var rege2 = /^([1]{1,1})(T)+'_([A-Za-z]{2,4})+'_([A-Za-z0-9_]{3,40})+'_([0-9]{2,8})+'_([A-Za-z]{1,1})+([0-9]{1,1})$/;
if (rege2.test(valueName1)){
$("#Name2").val(valueName1.replace(rege, '4'+'$2_$3_$4_'+$("#type2").val()+'_$6'+ '$7' ));
$("#Name3").val(valueName1.replace(rege, '4'+'$2_$3_$4_'+$("#type3").val()+'_$6'+ '$7'));
}

我从正则表达式中捕获了字段,我在替换函数中使用它们,但我想将整数添加到$7字段ex:

 $("#Name2").val(valueName1.replace(rege, '4'+'$2_$3_$4_'+$("#type2").val()+'_$6'+ ('$7'+1) ));

我试着:

$("#Name2").val(valueName1.replace(rege, '4'+'$2_$3_$4_'+$("#type2").val()+'_$6'+ parseInt('$7', 10) + 1 ));

但是不工作。

请告诉我如何在$7变量中添加整数

您可以使用$7临时设置一个隐藏字段,然后提取它并使用parseInt将其转换为整数,将1求和为结果。像这样:

$("#temporary_hidden_field").val(valueName1.replace(rege, '$7'));
$("#Name2").val(parseInt($("#temporary_hidden_field").val(),10)+1);

请注意,同样可以通过设置一个临时JS变量而不是一个隐藏字段来完成:

var temp=valueName1.replace(rege, '$7')
$("#Name2").val(parseInt(temp,10)+1);

确保处理可能的转换错误,也(parseInt()返回NaN)。