Found the charset specific one at ...
HTTP character sets are identified by case-insensitive tokens.
How this string reuse works ...
The headers are accessed via a HttpField object internally, that has 2 global caches based on Trie (a general cache for field names and values, and another for content type charset combos).
The caches are prepopulated with the 95% percentile of commonly used values seen in web exchanges. (a quick glance at our list, I see that the we came up with here is remarkably similar to the standardized lists that the SPDY expert group also came up with for their own optimization reasons. I expect we'll see a similar list in HTTP/2 as well)
During parsing or generating, the logical field is eventually represented by a HttpField object, with the underlying Trie caches eliminating the need for more String objects just to represent the same content over and over again. New strings not in the cache, are added to the cache so that later HttpField instances can benefit from this memory savings.