2015-11-26 94 views
-1

我正在使用Node.js和MongoDB,並且我試圖在集合中的$text字段上執行$search。如在文檔中提到,要匹配上一個短語,而不是個別條款,圍住短語逃脫雙引號(\「),如: ‘\’SSL證書\」」我們如何在轉義雙引號中包含變量?

我有一個變量query,保存用戶在簡單文本搜索應用程序中輸入的值,我想將該查詢添加爲一個短語,以便我可以對用戶輸入的所有單詞進行適當的搜索。有反正可以做到這一點嗎?

+1

你的代碼的相關部分將有助於給出更準確的答案。 – Thawn

回答

2

假設用戶輸入的變量input你可以圍繞它添加雙qoutes像這樣:

input = '"'+input+'"'; 

這個字符串,你應該然後能夠在您的$search使用。 如果您發佈您的代碼,我可以嘗試給出更具體的答案。

+0

這工作。我只是添加了轉義引號以匹配mongodb文檔所需的內容: var reg =「\」「+ query +」\「」 – 221b

+0

很高興能幫到您。我認爲'''''''和''「''應該做同樣的事情。 – Thawn

0

而不是使用/regexString/g格式的正則表達式,你也可以創建Regex使用變量的對象。

var regexExp = new RegExp(query,"g"); 

您可以使用此regexExp進行搜索。

+0

我的確嘗試過這個解決方案,但它並沒有返回我需要的文檔。無論如何感謝您的幫助! – 221b

相關問題