美元符号在string中使用时,是否意味着有关数组的任何特殊情况?
鉴于这个mongoose的查询,美元符号在这里意味着什么?
customers.findOne({'name':data.tenant,'scripts.name':data.name},{'scripts.$':1},function(err,data2){
这最终返回scripts
数组的一个元素。
下面的美元符号以同样的方式工作?
var newStr = loc.replace(/(.*\/)[^/]+(\/[^\/]*)$/,'$1'+data.name+'$2');
$1
和$2
是数组的第一个和第二个元素。
$
字符在string中使用时,对于数组,索引或类似的东西是什么意思?
或者$
刚被覆盖,分别由findOne
和string.replace
函数以不同的方式使用?
如前所述, $1
特定于replace()函数
$
在数据库查询是mongodb特定的标记,这意味着“数组条目匹配您的请求”,你可以find它在mongodb文档
所以不,这个符号没有语言的含义。 它有时用作函数名称(jQuery),但它只是一个正则文字,没什么特别的。
$1
和$2
是对你的正则expression式的引用。
给定var newStr = loc.replace(/(.*\/)[^/]+(\/[^\/]*)$/,'$1'+data.name+'$2');
$1
是指任何与第一组圆括号相匹配的值
$2
是指任何与第二组圆括号相匹配的值