Ben*_*jia 3 javascript regex mongodb
我在mongodb查询上有这个正则表达式来匹配单词前缀:
{sentence: new RegExp('^'+key,'gi')}
Run Code Online (Sandbox Code Playgroud)
如果我希望它匹配至少有一个以key前缀开头的单词的句子,那么正确的正则表达式模式是什么?例如:
如果我有一个句子
"这是一只狗"
当key'do'时,它应匹配该句子,因为前缀'do'是'dog'的子串.
我现在的解决方案只适用于句子的第一个单词.如果我键入't'或'th'或'this',它到目前为止只匹配该句子.每当我输入'i'('is'的前缀)或'do'('dog'的前缀)时,它就不匹配该句子.
您可以使用表达式/\bprefix\w+/。这应该匹配任何以 开头的单词"prefix"。这里的\b代表一个词边界并且\w是任何词字符。
如果你不想得到整个词,你可以做/\bprefix/。如果你想把它放在一个字符串中,你还必须转义\: '\\bprefix'。
使用\b锚点匹配单词边界:
\bdo
Run Code Online (Sandbox Code Playgroud)
在'好狗'中找到'做',但不能与'无所事事'相提并论.