使用特殊字符创建regexp
Creating regexp with special characters
我正在为mongodb:创建一个查询
app.get('content/:title',
function(req, res) {
var regexp = new RegExp(req.params.title, 'i');
db.find({
"title": regexp,
}).toArray(function(err, array) {
res.send(array);
});
});
但有时标题中有一个括号。这给了我一个错误:
SyntaxError: Invalid regular expression: /cat(22/: Unterminated group
at new RegExp (unknown source)
正在搜索的标题是cat(22)。
让正则表达式接受括号的最简单方法是什么?谢谢
您可以使用从该答案借用的代码来转义所有可能的regex特殊字符。
new RegExp(req.params.title.replace(/([.?*+^$[']''(){}|-])/g, "''$1"), "i");
用反斜杠转义。并在类似的网站上进行测试http://rejex.heroku.com/
/cat'(22/
相关文章:
- 创建一个类似链接的按钮,并通过Javascript函数打开一个新的弹出窗口
- 为effect Composer创建GodRays效果过程
- 从javascript创建一个列表
- onkeyup无法动态创建多个文本区域
- 如何使用javascript从主svg对象动态创建svg视图框
- 如何创建此RegExp
- 如何在javascript regexp中创建类似/d+/的东西,但使用另一种语言的数字
- 传递手动创建的RegExp对象时,String.match返回不正确
- 使用特殊字符创建regexp
- C++11 std::regex_replace()创建带有特定字符串问题的regexp
- Javascript regexp创建错误
- Regexp在SQL创建表语句中匹配表名
- 创建regexp匹配数组(多行,javascript)
- Javascript RegExp:使用变量创建正则表达式
- 在使用变量创建RegExp对象时添加特殊字符
- JS Regexp替换"illegal"字符来创建PHP函数名
- 通过对象匹配Javascript regexp中的空白,通过regexp构造函数创建
- 使用RegExp动态创建正则表达式,并过滤内容
- 为什么由/..创建的javascript RegExp/ work,但通过"new RegExp"没
- 由DOS创建的CSV不在我的Regexp javascript上工作