我想以字符串形式返回我的正则表达式:
var test = RegExp("[a-z]{5}");
// want "[a-z]{5}" or even "/[a-z]{5}/" as a string
使用toString
返回“[object Object]”
更多背景:
我有一些存储的正则表达式模式,用于搜索一个非常大的字符串。有一些不应该发生匹配的指数,这是由相当复杂的数学方程决定的。运行 string.replace(test, function) 后,我根据方程测试匹配的索引,如果是不允许的索引,我想重新运行替换,除了从下一个索引。由于 javascript 中的 string.replace
不采用索引参数,因此我想采用我的正则表达式,并在前面加上 *{firstIndexWeFound + 1}
进行补偿。
谢谢!
最佳答案
使用source
属性:
var test = RegExp("[a-z]{5}");
var pattern = test.source; // returns "[a-z]{5}"
关于javascript - 将 RegExp 转换回字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21434464/