目前我的变量有turnallplugsoffR1,turnallplugsonR1。 我想从字符串中排除R1,并在nodejs中的变量中只得到turnallplugsoff。 你能帮助我实现同样的目标吗? dataval =" turnallplugsoffR1"
var room_value=dataval.match(/R[0-9]+/i); //matched R1/R2 any other string
console.log(excl); // i want only turnallplugsoff. I dont want R1/R2
console.log(room_value[0]);
答案 0 :(得分:1)
您可以删除R
后跟字符串末尾的任意1位数字:
var room_value=dataval.replace(/R\d+$/, '')
<强>详情
R
- R
来信\d+
- 一位或多位$
- 字符串结束。
var dataval="turnallplugsoffR1";
var room_value=dataval.replace(/R\d+$/, '');
console.log(room_value);
&#13;
您也可以使用
通过一个匹配操作获取这两个值dataval.match(/^(.*)(R\d+)$/)
此处,^
匹配字符串的开头,(.*)
捕获到组1中的任何0+
除了换行符之外的字符,直到最后R
,后跟字符串(R\d+)$
末尾的数字,将R
+数字捕获到第2组。
参见JS演示:
var dataval="turnallplugsoffR1";
var res = dataval.match(/^(.*)(R\d+)$/);
if (res) {
console.log(res[1]); // turnallplugsoff
console.log(res[2]); // R1
}
&#13;
答案 1 :(得分:0)
只需将字符串拆分为R1并获得所需的值。
dataval="turnallplugsoffR1"
var room_value= dataval.split('R1');
alert(data[0]);