写入正则表达式的动态变量
dynamic variable written into regular expression
我有一个简单的正则表达式:
str.match(/SK=(['w'-]+)/i);
我希望SK
部分是动态的,这样我就可以返回SK=
, WP=
等的匹配…
所以我要找的是:
var attr = 'SK';
str.match(/' + attr + '=(['w'-]+)/i);
使用构造函数语法创建正则表达式:
var myRegex = new RegExp(attr + "([''w''-]+)","i");
然后:
str.match(myRegex);
请看这里(强调我的):https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp
文字表示法在计算正则表达式时提供正则表达式的编译。当正则表达式将保持不变时使用文字表示法。例如,如果使用文字表示法来构造循环中使用的正则表达式,则正则表达式不会在每次迭代时重新编译。
正则表达式对象的构造函数,例如new RegExp("ab+c"),提供正则表达式的运行时编译。当您知道正则表达式模式将改变时,或者您不知道模式并且从其他源(例如用户输入)获取模式时,请使用构造函数。
相关文章:
- Javascript动态变量(添加了随机数)
- 传递给 PHP 表单时 JavaScript 动态变量上的未定义索引
- Knockoutjs-带有动态变量的模板
- 在Javascript中连接一个动态变量名
- 将字符串与integer连接,用作jquery中的变量(创建动态变量)
- 在jquery中声明基于动态变量的动态数组
- 使用动态变量从tr访问子td
- 动态变量名称 javascript MVC
- 使用Handlebars从动态变量渲染组件
- JS中的动态变量
- 动态变量名语法
- HashJS中的动态变量
- 使用动态变量名更新JSON中的结果
- 显示动态变量(php和javascript)的总数
- 使用动态变量作为多维对象的键
- 车把:将动态变量传递给零件
- 如何使用 jquery 创建动态变量
- 使用 eval JavaScript 创建动态变量
- JavaScript 解析带有动态变量的嵌套 JSON
- 对 Google API HTTP 请求使用动态变量