[Zope-dev] Re: Escaping special characters in ZCTextIndex.QueryParser?

2007-11-27 Thread Robert Casties
Dieter Maurer wrote:
 Robert Casties wrote at 2007-11-25 19:32 +0100:
 is it possible to escape parentheses in ZCTextIndex searches?

 If not, why not and how can I do a simple search in an index bypassing
 the QueryParser?
 
 I fear nobody of us knows this.
 
 Therefore, you must yourself look at the sources.

I had a quick look at the QueryParser source before but it wasn't
obvious to me. I will have a deeper look again.

 If you need this feature and ZCTextIndex does not provide
 it, then you may use a different text index.
 I know that with TextIndexNG3 you can select different
 parsers (among others a parser that does not interpret '(' and ')')
 or provide your own one.

Is the parser for the search query also pluggable? I will have another
look at TextIndexNG.

 I have an index where words can contain parentheses and I am unable to
 enter a query for these words because the QueryParser interprets all
 parentheses as search expression groupings.
 
 Then, you will need to change the lexicon as well.
 Usually, the lexicon breaks words at non alnum characters
 (with a few exeptions).

I have my own splitter for the Lexicon so I think the right words are in
the index but I haven't been able to check because I can't search the
index...


Thanks
Robert

___
Zope-Dev maillist  -  Zope-Dev@zope.org
http://mail.zope.org/mailman/listinfo/zope-dev
**  No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope )


[Zope-dev] Re: Escaping special characters in ZCTextIndex.QueryParser?

2007-11-27 Thread mustapha


Robert Casties wrote:
 Hi,
 
 is it possible to escape parentheses in ZCTextIndex searches?

Yes

 If not, why not and how can I do a simple search in an index bypassing
 the QueryParser?

I said Yes :)

 I have an index where words can contain parentheses and I am unable to
 enter a query for these words because the QueryParser interprets all
 parentheses as search expression groupings.

 Enclosing the words with double quotes has not helped, neither have
 backslashes...

You have to enclose  your string with double quotes and then with single
quote. So the parser gets the double quotes with the search string
The parser does not interpret the string between double quotes.

It works for me :)
suppose you are searching for: my text (really good text) to search for

txt = 'my text (really good text) to search for'
brains = context.portal_catalog(searchableText=text)

HTH

 Is there a way other than having to write a new ZCTextIndex?
 
 Thanks for any insight
 
   Robert
 
 ___
 Zope-Dev maillist  -  Zope-Dev@zope.org
 http://mail.zope.org/mailman/listinfo/zope-dev
 **  No cross posts or HTML encoding!  **
 (Related lists - 
  http://mail.zope.org/mailman/listinfo/zope-announce
  http://mail.zope.org/mailman/listinfo/zope )
 

___
Zope-Dev maillist  -  Zope-Dev@zope.org
http://mail.zope.org/mailman/listinfo/zope-dev
**  No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope )