i don't know if this really solves your problems, as you are talking about multiple tokens.
just remember, users have trouble understanding how wildcards interact with stemming and such, so I don't see regexp queries spanning across multiple tokens (analyzed) anytime soon...
> Implement boundary match support
> Key: SOLR-1980
> URL: https://issues.apache.org/jira/browse/SOLR-1980 > Project: Solr
> Issue Type: New Feature
> Components: Schema and Analysis
> Reporter: Jan Høydahl
> Sometimes you need to specify that a query should match only at the start or end of a field, or be an exact match.
> Example content:
> 1) a quick fox is brown
> 2) quick fox is brown
> Example queries:
> "^quick fox" -> should only match 2)
> "brown$" -> should match 1) and 2)
> "^quick fox is brown$" -> should only match 2)
> Proposed way of implmementation is through a new BoundaryMatchTokenFilter which behaves like this:
> On the index side it inserts special unique tokens at beginning and end of field. These could be some weird unicode sequence.
> On the query side, it looks for the first character matching "^" or the last character matching "$" and replaces them with the special tokens.