Lucene e Personagens Especiais

Estou usando o Lucene.Net 2.0 para indexar alguns campos de uma tabela de banco de dados. Um dos campos é um campo 'Nome' que permite caracteres especiais. Quando executo uma pesquisa, ele não encontra meu documento que contém um termo com caracteres especiais.

Eu indexo meu campo como tal:

Directory DALDirectory = FSDirectory.GetDirectory(@"C:\Indexes\Name", false);
Analyzer analyzer = new StandardAnalyzer();
IndexWriter indexWriter = new IndexWriter(DALDirectory, analyzer, true, IndexWriter.MaxFieldLength.UNLIMITED);

Document doc = new Document();
doc.Add(new Field("Name", "Test (Test)", Field.Store.YES, Field.Index.TOKENIZED));
indexWriter.AddDocument(doc);

indexWriter.Optimize();
indexWriter.Close();

E eu procuro fazer o seguinte:

value = value.Trim().ToLower();
value = QueryParser.Escape(value);

Query searchQuery = new TermQuery(new Term(field, value));
Searcher searcher = new IndexSearcher(DALDirectory);

TopDocCollector collector = new TopDocCollector(searcher.MaxDoc());
searcher.Search(searchQuery, collector);
ScoreDoc[] hits = collector.TopDocs().scoreDocs;

Se eu fizer uma pesquisa por campo como 'Nome' e valor como 'Teste', ele encontrará o documento. Se eu realizar a mesma pesquisa que 'Nome' e o valor que 'Teste (Teste)', ele não encontrará o documento.

Ainda mais estranho, se eu remover a linha QueryParser.Escape, procurar uma GUID (que, é claro, contém hífens), ela encontrará documentos onde o valor da GUID corresponde, mas realizando a mesma pesquisa com o valor de 'Teste (Teste) 'ainda não produz resultados.

Não tenho certeza do que estou fazendo de errado. Estou usando o método QueryParser.Escape para escapar dos caracteres especiais e estou armazenando o campo e pesquisando pelos exemplos do Lucene.Net.

Alguma ideia?

questionAnswers(2)

yourAnswerToTheQuestion