Package org.apache.lucene.queryparser.classic

Examples of org.apache.lucene.queryparser.classic.QueryParser


    }

    Set<QueryResult> results = new LinkedHashSet<QueryResult>();
    StandardAnalyzer analyzer = new StandardAnalyzer(luceneVersion);
    try {
      QueryParser qp = new QueryParser(luceneVersion, Lucene.content.name(), analyzer);
      Query query = qp.parse(queryText);

      IndexSearcher searcher = getSearcher();
      Query rewrittenQuery = searcher.rewrite(query);

      log.debug(rewrittenQuery.toString());
View Full Code Here


    tx.commit();

    // search if the record made it into the index
    tx = s.beginTransaction();
    String searchQuery = "Joe";
    QueryParser parser = new QueryParser( TestConstants.getTargetLuceneVersion(), "Content", TestConstants.standardAnalyzer );
    Query luceneQuery = parser.parse( searchQuery );
    FullTextQuery query = s.createFullTextQuery( luceneQuery );
    List results = query.list();
    assertTrue( "We should have a hit", results.size() == 1 );
    tx.commit();
View Full Code Here

        tx.commit();
        s.close();

        s = sf.openSession();
        tx = s.beginTransaction();
        QueryParser parser = new QueryParser(
            TestConstants.getTargetLuceneVersion(), "id",
            TestConstants.stopAnalyzer
        );
        Query query;
        try {
          query = parser.parse( "name:emmanuel2" );
        }
        catch (ParseException e) {
          throw new RuntimeException( e );
        }
        boolean results = Search.getFullTextSession( s ).createFullTextQuery( query ).list().size() > 0;
View Full Code Here

    doc.add( new TextField("content", whatToIndex, Store.YES));
    writer.addDocument(doc);
    writer.close();

    IndexSearcher searcher = new IndexSearcher(DirectoryReader.open(d));
    QueryParser qp = new QueryParser(Version.LUCENE_46, "content", analyzer);
    Query query = qp.parse(whatToSearch);
    ScoreDoc[] hits = searcher.search(query, null, 1000).scoreDocs;

    writer.close();
    d.close();
   
View Full Code Here

    public static Query parse(Version matchVersion, String query, String[] fields, BooleanClause.Occur[] flags, Analyzer analyzer) throws ParseException {
        if (fields.length > flags.length)
            throw new IllegalArgumentException("fields.length != flags.length");
        BooleanQuery bQuery = new BooleanQuery();
        for (int i = 0; i < fields.length; i++) {
            QueryParser qp = new HebrewQueryParser(matchVersion, fields[i], analyzer);
            Query q = qp.parse(query);
            if (q != null && (!(q instanceof BooleanQuery) || ((BooleanQuery) q).getClauses().length > 0)) {
                bQuery.add(q, flags[i]);
            }
        }
        return bQuery;
View Full Code Here

    public static Query parse(Version matchVersion, String[] queries, String[] fields, Analyzer analyzer) throws ParseException {
        if (queries.length != fields.length)
            throw new IllegalArgumentException("queries.length != fields.length");
        BooleanQuery bQuery = new BooleanQuery();
        for (int i = 0; i < fields.length; i++) {
            QueryParser qp = new HebrewQueryParser(matchVersion, fields[i], analyzer);
            Query q = qp.parse(queries[i]);
            if (q != null && (!(q instanceof BooleanQuery) || ((BooleanQuery) q).getClauses().length > 0)) {
                bQuery.add(q, BooleanClause.Occur.SHOULD);
            }
        }
        return bQuery;
View Full Code Here

    public static Query parse(Version matchVersion, String[] queries, String[] fields, BooleanClause.Occur[] flags, Analyzer analyzer) throws ParseException {
        if (!(queries.length == fields.length && queries.length == flags.length))
            throw new IllegalArgumentException("queries, fields, and flags array have have different length");
        BooleanQuery bQuery = new BooleanQuery();
        for (int i = 0; i < fields.length; i++) {
            QueryParser qp = new HebrewQueryParser(matchVersion, fields[i], analyzer);
            Query q = qp.parse(queries[i]);
            if (q != null && (!(q instanceof BooleanQuery) || ((BooleanQuery) q).getClauses().length > 0)) {
                bQuery.add(q, flags[i]);
            }
        }
        return bQuery;
View Full Code Here

public class HebrewQueryParserTest
{
    @Test
    public void ParsesAcronymsCorrectly() throws ParseException, IOException {

        QueryParser qp = new HebrewQueryParser(Version.LUCENE_46, "f", new SimpleAnalyzer(Version.LUCENE_46, HSpellLoader.readDefaultPrefixes()));
        qp.parse("צה\"ל");
        qp.parse("\"צהל\"");
        qp.parse("כל הכבוד לצה\"ל");
        qp.parse("\"כל הכבוד לצה\"ל\"");
        qp.parse("\"כל הכבוד\" לצה\"ל");

        qp.parse("מנכ\"לית");

        try
        {
            qp.parse("צה\"\"ל");
            qp.parse("\"צה\"ל");
            fail("Expected exception was not thrown");
        }
        catch(ParseException ex) { }
    }
View Full Code Here

                throw new IOException("Could not locate index database");
            }
            searcher = new IndexSearcher(ireader);
            SortField sfield = new SortField(QueryBuilder.DATE, SortField.Type.STRING, true);
            Sort sort = new Sort(sfield);
            QueryParser qparser = new QueryParser(QueryBuilder.PATH, new CompatibleAnalyser());
            Query query;
            ScoreDoc[] hits = null;
            try {
                query = qparser.parse(path);
                TopFieldDocs fdocs = searcher.search(query, null, hitsPerPage * cachePages, sort);
                fdocs = searcher.search(query, null, fdocs.totalHits, sort);
                hits = fdocs.scoreDocs;
            } catch (ParseException e) {
                OpenGrokLogger.getLogger().log(Level.WARNING, "An error occured while parsing search query", e);
View Full Code Here

    public String search() throws IOException {
        final IndexReader indexReader = DirectoryReader.open(FSDirectory.open(this.store));
        final IndexSearcher indexSearcher = new IndexSearcher(indexReader);

        final QueryParser queryParser = new QueryParser(Configuration.VERSION, "", Configuration.ANALYZER);
        try {
            final Query validQuery = queryParser.parse(this.query);
            final TopScoreDocCollector hits = TopScoreDocCollector.create(10, true);
            indexSearcher.search(validQuery, hits);

            final List<Document> documents = Lists.newArrayList();
            for (int index = 0; index <= hits.getTotalHits(); index++) {
View Full Code Here

TOP

Related Classes of org.apache.lucene.queryparser.classic.QueryParser

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.