如何动态创建正则表达式以在.match Javascript中使用?
这个问题在这里已经有了答案:
RegExp是你的朋友:
var p = "*|", s = "|*"
var reg = new RegExp(p + '(d{3,})' + s, 'g')
"*|1387461375|* hello *|sfa|* *|3135145|* test".match(reg)
工作示例。
您可以先使用变量构造一个RegExp
对象。 还要记住要逃避*
和|
同时形成RegExp
对象:
var p = "*|";
var s = "|*";
var re = new RegExp(p.replace(/([*|])/g, '$1')
+ "(d{3,})" +
s.replace(/([*|])/g, '$1'), "g");
var m = "*|1387461375|* hello *|sfa|* *|3135145|* test".match(re);
console.log(m);
//=> ["*|1387461375|*", "*|3135145|*"]
链接地址: http://www.djcxy.com/p/76831.html
上一篇: How to dynamically create regex to use in .match Javascript?
下一篇: How to remove a single class only in Javascript using Regex?