javascript正则表达式:使用单词边界将变量传递给regexp
javascript regular expression: passing variable to regexp using word boundary
我有以下字符串:
"u_1,u_3,u_4,u_5,u_6,u_7,u_8,u_10,u_11,u_13,u_14,u_15,u_16,u_17,u_18,u_20"
我想使用正则表达式来过滤"u1",但它不应该找到"u11"或"u13",也就是说,它需要完全匹配。到目前为止还不错。此外,我要筛选的字符串将作为变量传递。到目前为止,我有以下内容:
var str = "u_1,u_3,u_4,u_5,u_6,u_7,u_8,u_10,u_11,u_13,u_14,u_15,u_16,u_17,u_18,u_20";
var setName = "u_1";
var re = new RegExp('/'b('+setName+')'b/g');
str.match(re);
不幸的是,我的regexp使用setName变量时出现了问题,但我不知道如何修复它。
删除正斜杠并再次转义反斜杠。修饰符在RegExp构造函数中作为单独的参数传递。
var re = new RegExp("''b("+setName+")''b", "g");
示例:
> var str = "u_1,u_3,u_4,u_5,u_6,u_7,u_8,u_10,u_11,u_13,u_14,u_15,u_16,u_17,u_18,u_20";
undefined
> setName = "u_1";
'u_1'
> var setName = "u_1";
undefined
> var re = new RegExp("''b("+setName+")''b", "g");
> re
/'b(u_1)'b/g
> str.match(re)
[ 'u_1' ]
相关文章:
- 将函数的上下文应用于javascript变量
- 无法导出函数expressjs/requestjs中的变量
- 在javascript regexp中捕获多个变量的一种更简单的方法
- 如何使用RegExp选择字符串的一部分并在变量中重用它
- 在RegExp中使用带有转义符的变量
- javascript正则表达式:使用单词边界将变量传递给regexp
- 使用Javascript Regexp替换基于变量的字符串部分
- Javascript - 使用变量 RegExp 匹配数据数组中的多个关键字
- 变量中RegExp模式的一部分
- RegExp测试有两个变量:可能
- 使用jquery变量替换句点、冒号或任何其他字符的通用regexp
- Regexp与变量:如何转换xml与属性的html使用javascript替换方法
- RegExp不区分大小写搜索整个单词与变量
- Javascript RegExp:使用变量创建正则表达式
- 在使用变量创建RegExp对象时添加特殊字符
- 将本机正则表达式转换为带变量的RegExp对象时出错
- 分配RegExp.测试一个变量
- 将变量与RegExp一起使用时获取SyntaxError
- 如何使用RegExp中的变量和Javascript中的搜索方法
- Javascript regexp:在反向引用模式中使用变量