Use the analyze API to see how your text is indexed when using a keyword tokenizer which is the same that happens with a keyword type.

I believe ? Is correctly indexed.
But I guess that in regex you need to write something like ?? Or \?

Again I'm not good at this :)

---
NEW: Monitor These Apps!
elasticsearch, apache solr, apache hbase, hadoop, redis, casssandra, amazon cloudwatch, mysql, memcached, apache kafka, apache zookeeper, apache storm, ubuntu, centOS, red hat, debian, puppet labs, java, senseiDB