Skip to content

Commit 9bb56c3

Browse files
committed
Allow quoted terms within a range expression
1 parent 5dd1d6c commit 9bb56c3

File tree

3 files changed

+13
-7
lines changed

3 files changed

+13
-7
lines changed

lib/lucene.grammar

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -277,10 +277,8 @@ rterm_char
277277

278278

279279
ranged_term
280-
= term:rterm_char+
281-
{
282-
return term.join('');
283-
}
280+
= term:rterm_char+ { return term.join(''); }
281+
/ term:quoted_term
284282

285283
unquoted_term
286284
= term:term_char+

lib/queryParser.js

Lines changed: 4 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

test/queryParser_test.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -333,6 +333,13 @@ describe('queryParser', () => {
333333
expect(results['left']['term_max']).to.equal('2017-11-18T04:28:11.999Z');
334334
expect(results['left']['inclusive']).to.equal('right');
335335
});
336+
337+
it('parses a quoted term in a range expression', () => {
338+
var results = lucene.parse('date:["3/daysAgo" TO Today]');
339+
expect(results['left']['field']).to.equal('date');
340+
expect(results['left']['term_min']).to.equal('3/daysAgo');
341+
expect(results['left']['term_max']).to.equal('Today');
342+
});
336343
});
337344

338345
describe('Lucene Query syntax documentation examples', () => {

0 commit comments

Comments
 (0)