lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mark Miller <markrmil...@gmail.com>
Subject Re: Rewrite one phrase to another in search query
Date Fri, 29 Jun 2007 00:46:59 GMT
You might try my Query Parser, Qsol. http://myhardshadow.com/qsol.php
There is a find/replace feature that will do what you want. FindReplace 
takes the find string, the replace string, boolean for case sensitive, 
boolean to indicate the replacement will act as an operator (allows for 
correct default space operator functionality).

- Mark
Example Code:

        QsolParser parser = ParserFactory.getInstance(new 
QsolConfiguration())
                                     .getParser(false);

        parser.addFindReplace(new FindReplace("\"the old fast razor\"", 
"tofr",
                true, false));

        parser.addFindReplace(new FindReplace("tofr", "\"the old fast 
razor\"",
                true, false));

        example = "test(\"the old fast razor\" & mark)";
        expected = "+test:tofr +test:mark";
        assertEquals(expected, parse(example));

        Parse Method:

        Query result = null;
        try {
            result = parser.parse("field", query, analyzer);
        } catch (EmptyQueryException e) {
            return "";
        } catch (QsolSyntaxException e) {
            throw new RuntimeException(e);
        }

        return result.toString();

Aliaksandr Radzivanovich wrote:
> What if I need to search for synonyms, but synonyms can be expanded to
> phrases of several words?
> For example, user enters query "tcp", then my application should also
> find documents containing phrase "Transmission Control Protocol". And
> conversely, user enters "Transmission Control Protocol", then my
> application should also find documents with word "tcp".
>
> It seems like Lucene does not support this scenario out of the box.
> Then where to look for the solution? What Lucene
> extensions/classes/interfaces should I investigate?
>
> Thanks.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
> For additional commands, e-mail: java-user-help@lucene.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-user-help@lucene.apache.org


Mime
View raw message