I want Lucene.NET to store a value while indexing a modified, stripped-down version of the stored value. e.g. Consider the value:

```
this_example-has some/weird (chars) 100%

```

I want it stored right like that (so that I can retrieve exactly that for showing in the results list), but I want lucene to index it as:

```
this example has some weird chars 100

```

(you see, like a "sanitized" version of the original value) for a simplified search.

I figure this would be the job of an analyzer, but I don't want to mess with rolling my own. Ideally, the solution should remove everything that is not a letter, a number or quotes, replacing the removed chars by a white-space before indexing.

Any suggestions on how to implement that?

This is because I am indexing products for an e-commerce search, and some have realy creepy names. I think this would improve search assertiveness.

Thanks in advance.